Inhalt der Vorlesung „Rechnerkommunikation“ Einführung Anwendungsschicht Transportschicht Netzwerkschicht Sicherungsschicht Physikalische Schicht Netzwerksicherheit Rechnerkommunikation, Einführung 1 Einführung Beispiele für Rechnerkommunikation Konzept der Lehrveranstaltung Klassifikation von Kommunikationssystemen Protokolle Geschichte Literatur Rechnerkommunikation, Einführung 2 Beispiele für Rechnerkommunikation IP-Netz (Internet) Kommunikation zwischen Anwendungen auf Endsystemen (Host, Server) Verwendung von InternetProtokollen (u.a. TCP, UDP, IP) und weiteren (z.B. Ethernet, WLAN) Infrastruktur besteht u.a. aus Vermittlungseinheiten (Switches, Router), Funkbasisstationen, Modems kabelgebundene und drahtlose Verbindungen Unterscheidung von Zugangsnetz und Kernbereich Internet Service Provider (ISP) lokaler ISP Unternehmensnetz Host Rechnerkommunikation, Einführung regionaler ISP Server Router Switch Modem 3 Beispiele für Rechnerkommunikation Universal Serial Bus (USB) verbreitete serielle Anbindung von Peripheriegeräten an PC Sterntopologie aus Blättern (Nodes) und Verteilern (Hubs) Adressierung: 8 Bits für Node, 3 Bits für Endpunkt (Function) in Node Aufbau von Kanälen (Pipes) zwischen PC und Functions Protokoll für Übertragung basierend auf Sendeberechtigungen (Token) Rechnerkommunikation, Einführung 4 Beispiele für Rechnerkommunikation RNS UE1 Node B Iub Iu RNC Universal Mobile Telecommunications System (UMTS) CN UE2 Node B UE3 Node B Node B Iur Iub RNC Node B RNS Rechnerkommunikation, Einführung mobile Telekommunikation der 3. Generation: Sprache + Daten Mobilstation (User Equipment) Radio Network Subsystem für funkorientierte Funktionen mit Funkzellen und Basisstationen (Node B) Zugangsnetz (gegenwärtig Einsatz der ATM-Technologie), Kernnetz für Signalisierung, Transport, Übergang zu anderen Netzen geplanter Übergang zu IP 5 Beispiele für Rechnerkommunikation Bluetooth Bsp. für Wireless Personal Area Network (WPAN) verbreitete drahtlose Anbindung von Peripheriegeräten an PC Pikonetz: Ansammlung von Geräten die sich spontan (ad-hoc) vernetzen ein Gerät wird zum Master, die anderen verhalten sich als Slaves Master bestimmt Frequenzsprungfolge, Slaves müssen dieser folgen Kommunikation immer Master ↔ Slave Verbindungen für Daten und Sprache, diverse Konfigurationsmöglichkeiten Rechnerkommunikation, Einführung P S S M P SB S P SB M=Master P=Parked S=Slave SB=Standby 6 Beispiele für Rechnerkommunikation Ad-Hoc-Netze, Sensornetze Ad-Hoc-Netze: ohne Infrastruktur, Nutzung von Endgeräten der Netzteilnehmer für die Vernetzung, selbstorganisierend z.B. drahtlose Sensornetze (Wireless Sensor Networks, WSN) - einzelne Komponenten • klein (z. Zt. cm2, mm2 in Vorbereitung), billig • Energieversorgung (Batterie oder aus Umgebung) • Prozessor, Funkkommunikation • Sensoren: Licht, Feuchtigkeit, Druck, Erschütterung, Beschleunigung, Position, Magnetismus, Schall, … - Einsatzszenarien z.B.: Logistik, Sicherheit, Umwelt, Landwirtschaft, Gesundheitswesen, Heimautomatisierung, … Rechnerkommunikation, Einführung 7 Beispiele für Rechnerkommunikation Ein typisches drahtloses Sensornetz SN SN GW SN GW SN Bluetooth SN SN SN SN SN SN GW GW SN SN GW: gateway SN: sensor node Rechnerkommunikation, Einführung 8 Beispiele für Rechnerkommunikation Vernetzung im Fahrzeug heutige Mittelklasse- und Oberklasse-Fahrzeuge besitzen ca. 60 bis 100 elektronische Steuergeräte (Electronic Control Units, ECUs) für Antriebsstrang, Fahrerassistenz, Komfort, Infotainment Controller Area Network (CAN) verbreitetes Bussystem zur Kommunikation besondere Anforderungen an Zuverlässigkeit, Echtzeit Rechnerkommunikation, Einführung 9 Beispiele für Rechnerkommunikation Beispielhafte Vernetzungsarchitektur im Fahrzeug zentrales Gateway Anschluss der ECUs über mehrere CAN-Busse und weitere Bussysteme (z.B. FlexRay mit höheren Raten, MOST mit noch höheren Raten für Infotainment) an ECUs weitere Busse, z.B. Local Interconnect Network (LIN) Rechnerkommunikation, Einführung 10 Beispiele für Rechnerkommunikation Vernetzung mit anderen Fahrzeugen oder Infrastruktur Steigerung von Sicherheit, Effizienz und Komfort im Straßenverkehr Kommunikation über WLAN oder Mobilfunk Szenario des CoCar-BMBF-Verbundprojekts mit Nutzung von UMTS: Rechnerkommunikation, Einführung 11 Beispiele für Rechnerkommunikation Vielfalt von Kommunikationstechnologien paketvermittelte IP-Netze in Kombination mit Ethernet und WLAN leitungsvermittelte Netze wie das Telefonsystem (ISDN) und darunterliegende Transportnetze (SONET/SDH) Netze mit virtueller Leitungsvermittlung (ATM, MPLS) mobile Telekommunikation (GSM, UMTS, …), schnurlose Telefonie (DECT) Next Generation Networks (NGN): Konvergenz von Telekommunikationsnetzen (fest und mobil) und Datennetzen auf IP-Basis drahtlose Netze (WLAN, Bluetooth, (mobile) Ad-Hoc-Netze, Sensornetze, ZigBee, Wimax, Meshnets, UWB, …) Schnittstellen (seriell: RS-232, parallel: Centronics, …) Peripheriebusse (SCSI, Firewire, USB, IEC-Bus, Wireless USB, …) Systembusse (ISA, PCI, …) industrielle Automatisierung (Feldbusse, Industrial Ethernet) Fahrzeugkommunikation (CAN, LIN, FlexRay, MOST) Gebäudeautomatisierung (LON, EIB, …) … Rechnerkommunikation, Einführung 12 Beispiele für Rechnerkommunikation Gemeinsame Aspekte trotz Technologievielfalt Netztopologie: Anordnung der Kommunikationsgeräte Hierarchisierung in Protokollschichten, Beschreibung von Nachrichtenformaten und Protokollverhalten Adressierung, Wegesuche und Weiterleitung von Nachrichten Flußkontrolle: Optimierung der Senderate ohne Empfänger zu überlasten Überlastkontrolle: Verschonung des Netzes vor Überlast Fehlersicherung: Ausgleich von Bitfehlern und Verlusten Medienzugriff: Koordination des Zugriffs mehrerer Sender auf gemeinsames Medium Bitübertragung: Kodierung und Modulation Netzwerksicherheit: Verschlüsselung, Authentifizierung etc. Leistung: erreichbare Durchsätze und Verzögerungszeiten Zuverlässigkeit: Wahrscheinlichkeit von Ausfällen Rechnerkommunikation, Einführung 13 Einführung Beispiele von Rechnernetzen Konzept der Lehrveranstaltung Klassifikation von Kommunikationssystemen Protokolle Geschichte Literatur Rechnerkommunikation, Einführung 14 Konzept der Lehrveranstaltung Nutzen von Rechnernetzen Zugriff auf entfernte Informationen Informationsaustausch Steuerung entfernter Geräte gemeinsame Nutzung von Betriebsmitteln Leistungssteigerung und Fehlertoleranz Bedeutung von Rechnernetzen starkes Wachstum von Anzahl und Nutzung in den letzten 20 Jahren Basistechnologie, Infrastruktur für alle Lebensbereiche: Büro, Verwaltung, Bildung, Unterhaltung, E-Commerce, Telearbeit, Fertigung, Straßenverkehr, eingebettete Geräte, „allgegenwärtiges“ Rechnen, … Netzwerk- und andere Industrie: Entwerfen, Entwickeln, Installieren, Betreiben, Verwalten der HW und SW von Rechnernetzen viele Produkte benötigen Kommunikation viele (alle?) SW-Programme benötigen Kommunikation Rechnerkommunikation, Einführung 15 Konzept der Lehrveranstaltung Bedeutung des Internets globales Netz von Rechnernetzen größtes und wichtigstes Rechnernetz Inhalt von Rechnerkommunikation Netzwerke werden hauptsächlich am Beispiel des Internets untersucht die Schichten werden dabei von oben nach unten durchlaufen (Anwendungsschicht, Transportschicht, Netzwerkschicht, Sicherungsschicht, physikalische Schicht) dabei werden die wichtigsten grundlegenden Mechanismen von Rechnernetzen behandelt, die oft auch in anderen Netzen von Bedeutung sind an einigen Stellen werden auch analytische Ansätze zur Auslegung vorgestellt danach Netzwerksicherheit als übergreifender Aspekt Vertiefung durch Programmierübungen und theoretische Übungen Rechnerkommunikation, Einführung 16 Einführung Beispiele von Rechnernetzen Konzept der Lehrveranstaltung Klassifikation von Kommunikationssystemen Protokolle Geschichte Literatur Rechnerkommunikation, Einführung 17 Klassifikation von Kommunikationssystemen Einige Unterscheidungsmerkmale … Kommunikationsart Unicast (Punkt-zu-Punkt): ein Sender, ein Empfänger Multicast (Punkt-zu-Mehrpunkt, Gruppenruf): ein Sender, ein Gruppe von Empfängern Broadcast (Rundruf): an alle Teilnehmer des Netzes Anycast: ein Empfänger aus einer Gruppe möglicher Ziele Übertragungsart Übertragungsrichtung - simplex: unidirektionale Verbindung - halbduplex: bidirektionale Verbindung mit Umschalten, also nicht gleichzeitig in beide Richtungen - (voll-)duplex: gleichzeitig in beide Richtungen Rechnerkommunikation, Einführung 18 Klassifikation von Kommunikationssystemen Multiplexverfahren: Verwendung eines physikalischen Mediums durch mehrere Geräte - Frequenzmultiplex (Frequency Divsion Multiplex, FDM): Geräte verwenden verschiedene Teile des Frequenzspektrums - Zeitmultiplex (Time Divsion Multiplex, TDM): Geräte wechseln sich zeitlich ab FDM 4 KHz Kanal Frequenzspektrum 4 KHz TDM 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 Zeitschlitz Rechnerkommunikation, Einführung Rahmen Zeit 19 Klassifikation von Kommunikationssystemen Vermittlungsart - Leitungsvermittlung • zwischen Sender und Empfänger wird mittels Signalisierung ein Kanal zur Übertragung aufgebaut (z.B. durch Zeit- oder Frequenzmultiplex) • die zur Verfügung stehende Bitrate muß fest auf die Kanäle aufgeteilt werden • Standardverfahren in der Telefonie, bei schwankenden Datenaufkommen mit vielen Pausen ineffizient - Paketvermittlung • Sender schickt Daten in Paketen, die einzeln zum Sender gelangen • die Bitrate wird effizienter aufgeteilt • kurzfristiges höheres Datenaufkommen kann über Puffer abgefangen werden • dies kann zu Verzögerungen und Pufferüberläufen führen Rechnerkommunikation, Einführung 20 Klassifikation von Kommunikationssystemen Statistisches Multiplexen vergleicht man Paketvermittlung mit den bei der Leitungsvermittlung bekannten Multiplexverfahren, so erscheint diese wie statistisches Multiplexen 10 Mbps Ethernet A C 1.5 Mbps B Puffer mit Paketen, die auf Weiterleitung warten D Rechnerkommunikation, Einführung E 21 Klassifikation von Kommunikationssystemen Übertragungsmedium leitungsgebunden - z.B. verdrillte Kupferdrähte, Glasfaser - Bitraten von Kbps bis viele Gbps - Signalausbreitungsgeschwindigkeit Teil der Lichtgeschwindigkeit, c ≈ 2⋅108 m/s = 200 m/µs - kleine Bitfehlerraten, bei Glasfaser z.B. 10-10 drahtlos - z.B. Funk (terrestrisch, Satellit), Infrarot - Bitfehlerraten hoch wegen verschiedener Probleme bei der Ausbreitung von Funkwellen: 10-5 bis 10-2 - außerdem treten Bitfehler oft in Schüben (Bursts) auf Rechnerkommunikation, Einführung 22 Klassifikation von Kommunikationssystemen Entfernung Systembusse (z.B. PCI), Peripheriekommunikation (z.B. USB, Bluetooth) lokale Netze (LANs) - einige Kilometer, Ausbreitungsverzögerung z.B. 2,5 km/c = 12,5 µs Metropolitan Area Networks (MANs) - urbane Region, 50-100 km Wide Area Networks (WANs) - weltweit, Ausbreitungsverzögerung z.B. 10.000 km/c = 50 ms Bitrate 56 Kbps für Modem bis viele Gbps (Glasfaser, Satellit) Produkt von Bitrate und Ausbreitungsverzögerung gibt Daten auf Leitung - B = 10 Mbps, d = 2,5 km: B⋅d/c = 125 Bits - B = 1 Gbps, d = 10.000 km: B⋅d/c ≈ 500 MB Rechnerkommunikation, Einführung 23 Klassifikation von Kommunikationssystemen Topologie Ring Bus (linear) Baum Rechnerkommunikation, Einführung 2D-Torus Stern vollständig vermascht 24 Einführung Beispiele von Rechnernetzen Konzept der Lehrveranstaltung Klassifikation von Kommunikationssystemen Protokolle Geschichte Literatur Rechnerkommunikation, Einführung 25 Protokolle Rechnernetze sind „ziemlich“ komplex Endgeräte, Switches, Router, Schnittstellenkarten, Verbindungen Nachrichten Mechanismen zur Fehlersicherung, Fluß- und Überlastkontrolle, Adressierung, Wegsuche, Weiterleitung, Medienzugriff, … Protokolle wesentliches Strukturierungsprinzip legen Nachrichtenformat und Verhalten der Kommunikationspartner fest Beispiel: Hypertext Transfer Protocol (HTTP) - HTTP-Client erfragt Inhalte von HTTP-Server - 2 Arten von Nachrichten: Anfrage und Antwort - festgelegte Formate beider Nachrichten - festgelegtes Verhalten von HTTP-Client und HTTP-Server Rechnerkommunikation, Einführung 26 Protokolle ISO Open Systems Interconnection (OSI) verbreitete Terminologie Kommunikation wird durch Instanzen durchgeführt Dienst - was eine Instanz anbietet - ähnlich zu der öffentlichen Schnittstelle einer Softwarekomponente Protokoll - wie die Instanzen interagieren, um Dienst zu realisieren - Nachrichtenformat, Verhaltensregeln - eine Beschreibung der Implementierung, aber noch nicht die Implementierung Schicht - Zusammenfassung von Instanzen Schichtenarchitektur - System von Schichten, bei denen die Funktion der einzelnen Schichten und das Prinzip der Interaktion untereinander festgelegt ist Rechnerkommunikation, Einführung 27 Protokolle Strukturierung in Schichten Instanzen der Schicht n+1 nutzen die Dienste der Schicht n Dienst wird zwischen Schichten an Dienstzugangspunkten (Service Access Points, SAPs) angeboten, dafür werden Service Data Units (SDUs) übergeben Instanzen der Schicht n auf verschiedenen Hosts tauschen Protocol Data Units (PDUs) aus, jede PDU enthält einen Kopf (Header) n+1 entity n+1 entity n-SAP n-SDU n-SDU n-SDU n entity H Rechnerkommunikation, Einführung n-SAP H n-SDU n-PDU n entity 28 Protokolle Beispiel: HTTP nutzt die Dienste der Transportschicht HTTP server HTTP client Port 80 Ephemeral port # GET 80, # TCP TCP #, 80 Rechnerkommunikation, Einführung STATUS 29 Protokolle: OSI-Referenzmodell der Schichtenarchitektur Anwendungsprotokoll 7 Anwendung APDU Schnittstelle PPDU 6 Präsentation SPDU 5 Sitzung TPDU 4 Transport Paket 3 Präsentationsprotokoll 1 Session SPDU Transport TPDU Protokolle Router-Router Network Network Network Packet Data link Data link Data link Frame Physical Physical Physical Bit Router Router Host B Transportprotokoll Netzwerk Bitübertragung Host A Schicht Name der ausgetauschten Informationseinheit Presentation PPDU Sitzungsprotokoll Rahmen 2 Verbindung Bit Application APDU Interface Netzwerkprotokoll Host-Router Verbindungsprotokoll Host-Router Layer Bitübertragungsprotokoll Host-Router Rechnerkommunikation, Einführung 30 Protokolle: OSI-Referenzmodell der Schichtenarchitektur Bitübertragungsschicht (Physical Layer) mechanische, elektrische und prozedurale Eigenschaften zur Übertragung von Bits: Zeitsynchronisation, Kodierung, Modulation, … Sicherungs- oder Verbindungsschicht (Data Link Layer) Medienzugriff und gesicherte Übertragung von Rahmen (Frames): Rahmensynchronisation, Fehler- und Flußkontrolle, … Vermittlungsschicht (Network Layer) Übertragung von Paketen bzw. Datagrammen: Verbindungsaufbau, Wegewahl, Vermittlung, Betriebsmittelverwaltung, … Transportschicht (Transport Layer) zuverlässiger Ende-zu-Ende Transport von Segmenten Sitzungsschicht (Session Layer) Kommunikation zwischen Anwendungen Darstellungsschicht (Presentation Layer) Syntax und Semantik der ausgetauschten Informationen, z.B. mit Abstract Syntax Number One (ASN.1) oder XML Anwendungsschicht (Application Layer) Kommunikation der Anwendungsprozesse mit anwendungsspezifischen Informationen Rechnerkommunikation, Einführung 31 Protokolle Schichtenarchitektur im Internet OSI-Referenzmodell hat sich nicht durchgesetzt, vereinfachtes Modell des Internet ist verbreitet Anwendungsschicht - Netzwerkanwendungen (HTTP, FTP, …) Transportschicht - Transport von Segmenten zwischen Anwendungen (TCP, UDP) Netzwerkschicht - Datagramme zwischen Hosts über Router (IP), Weiterleitung, Wegewahl (Routing) Verbindungsschicht - Rahmen zwischen benachbarten Geräten, Medienzugriff, Sicherung physikalische Schicht - binäre Formate, Modulationsverfahren Rechnerkommunikation, Einführung Application Transport Network Link Physical 32 Protokolle Weg einer Nachricht zwischen Anwendungen Abstieg: jeweils ein Kopf dazu, Aufstieg: Kopf wird entfernt Message M Segment Ht M Datagram Hn Ht M Frame Hl Hn Ht M Source Application Transport Network Link Physical Hl Hn Ht M Link Physical Hl Hn Ht M Link-layer switch Destination Hn Hl Hn Ht Ht Ht M M M M Application Transport Network Link Physical Rechnerkommunikation, Einführung Router Hn Ht M Hl Hn Ht M Network Link Physical Hn Ht M Hl Hn Ht M 33 Protokolle Schichtenarchitektur in UMTS für den paketvermittelten Transport von Daten zwischen Mobilstation (UE), Funkzugangsnetz (UTRAN), Vermittlungsrechner im Kernnetz (SGSN) und Gateway zu anderen Netzen (GGSN, ähnlich zu Router) IP über anderen UMTS-spezifischen Schichten (bitte nicht auswendig lernen) UE paketvermittelt (packet switched) apps. & protocols IP, PPP, … PDCP UTRAN Uu SGSN Iu(PS) IP tunnel Gn GGSN IP, PPP, … GTP RLC GTP UDP/IP MAC MAC AAL5 AAL5 L2 L2 radio radio ATM ATM L1 L1 RLC PDCP Rechnerkommunikation, Einführung GTP UDP/IP UDP/IP GTP UDP/IP 34 Protokolle Schichtenarchitektur bei Bluetooth Kernspezifikation (orange) und Profilspezifikation (blau) Audio NW-Anw. vCal/vCard TCP/UDP OBEX AT modem commands IP BNEP Telefonie-Anwendungen PPP TCS BIN Verwaltung SDP Control RFCOMM (serial line interface) Audio Logical Link Control and Adaptation Protocol (L2CAP) Link Manager Baseband Radio Rechnerkommunikation, Einführung 35 Protokolle Implementierung von Protokollen die Schichten unterhalb der Anwendungsschicht sind typischerweise Teil des Betriebssystems die Dienste der Transportschicht können durch Betriebssystemaufrufe genutzt werden die meisten Programmiersprachen stellen APIs hierfür zur Verfügung, z.B. Objekte und Methoden in Java (java.net) im Betriebssystem verschiedene Realisierungsmöglichkeiten, für Effizienz wird das mehrmalige Kopieren von SDUs bei der Übergabe vermieden, stattdessen Übergabe von Referenzen Cross-Layer Optimierung die saubere Trennung in Schichten wird in der Realität oft nicht eingehalten, z.B. werden zur Steigerung der Effizienz manchmal Mechanismen der Bitübertragungs- und der Verbindungsschicht gekoppelt Rechnerkommunikation, Einführung 36 Protokolle Einige Gremien zur Standardisierung von Protokollen International Standards Organization (ISO) - internationale Standards - national: American National Standards Institute (ANSI), ... International Telecommunications Union (ITU) - Telekommunikationsstandards, PTTs - ITU-T (Telecommunications Sector, früher CCITT) - ITU-R (Radiocommunications Sector) European Telecommunications Standards Institute (ETSI) Internet Engineering Task Force (IETF) - Request for Comments (RFCs) Institute of Electrical and Electronic Engineers (IEEE) Industrieforen zur schnelleren Entwicklung (vielleicht) und Zertifizierung interoperabler Produkte - World Wide Web Consortium (W3C), Object Management Group (OMG), MPLS Forum, WiFi Alliance, Bluetooth Special Interest Group, ZigBee Alliance, Wimax Forum, … Rechnerkommunikation, Einführung 37 Protokolle Beschreibung von Protokollen Protokolle werden in Dokumenten von Standardisierungsgremien festgelegt informelle Beschreibung: bei IETF verbreitet, zusätzlich Referenzimplementierungen formale Beschreibung - Format der Nachrichten: ähnlich wie Datenstrukturen in Programmiersprachen, z.B. mit Abstract Syntax Notation One (ASN.1) der ISO - Szenarien: typische Abläufe des Nachrichtenaustauschs, z.B. Message Sequence Charts (MSCs) der ITU bzw. Sequenzdiagramme in der UML - Verhalten der Instanzen: Automaten, z.B. Specification and Description Language (SDL) der ITU oder Statecharts in der UML Rechnerkommunikation, Einführung 38 Protokolle Bsp. für SDL Prof. Stud. erzählen schlafen Frage stellen Frage hören warten Antwort erhalten denken 10 s richtig nein ja erklären Antwort geben 20 s - - Rechnerkommunikation, Einführung 39 Protokolle Bsp. für MSC Prof. Stud. Frage 10 s Wartezeit Antwort Rechnerkommunikation, Einführung 40 sta_tx_idle_2f(11) Process Tx_Coordination_sta Protokolle Bsp. für SDL Teil der Spezifikation des Medienzugriffs im IEEE 802.11g WLAN Standard, 2003 ein Automat, der Eingaben erhält und Ausgaben erstellt TxC_Idle Pdu_ Request (fsdu) not import( mBkIP) Ack, Cfend, Cts, Wake and MmCancel ignored in TxC_Idle state. Entry when CfPoll station wakes (endRx, ) up to transmit. txc_ req tpdu:= fsdu!pdus (fsdu!fCur) fsdu!eol fsdu!sqf:= seqnum, import (mCfp) rx_ poll TxC_Cfp * Atw_Start Test if fsdu seq number and tx lifetime set. These transitions are only present at Cf-pollable stations. TBTT defent:= -1 import(mBssId), import(mBssId), ) import (mIbss) (false) tpdu:= setSeq(tpdu, fsdu!sqf) `txrate:= selected tx data rate` TxTime( Rechnerkommunikation, Einführung tpdu:= fsdu!pdus (fsdu!fCur) See 9.6 for rules about selecting transmit data rate. sAckCtsLng/8, txrate, ackctstime) send_ frag tpdu:= mkFrame( Cfack. tx_ sifs BkDone (defent) seqnum:=if seqnum=4095 then 0 else seqnum+1 fi, fsdu!eol:= now + import (dot11MaxTransmitMsduLifetime) TxCfAck (endRx, ) - (true) dcfcw:=ccw, ccw:=atimcw AtimW Atim Window 41 Protokolle FFD next higher layer FFD MAC FFD PHY MLME-RESET.request MLME-SCAN.request (Energy detection) MLME-SCAN.confirm (SUCCESS) Bsp. für MSC Select PANId, ShortAddress, LogicalChannel Teil der Spezifikation des Medienzugriffs im 802.15.4 LR-WPAN Standard, 2003 senkrechte Linien heißen Lebenslinien und sind Instanzen zugeordnet Rechnerkommunikation, Einführung Perform energy detection scan MLME-START.request PLME-SET-TRX-STATE.request (Tx on) PLME-SET-TRX-STATE.confirm (SUCCESS) PD-DATA.request MLME-START.confirm (SUCCESS) PD-DATA.confirm(SUCCESS) Beacon PLME-SET-TRX-STATE.request (Rx on) PLME-SET-TRX-STATE.confirm (SUCCESS) 42 Protokolle Protokollbeschreibung in Rechnerkommunikation meist informell Szenarien (informell, nicht gemäß MSC) Client Server manchmal kommunizierende Automaten: Statecharts wie in UML Rechnerkommunikation, Einführung 43 Protokolle Dienstgüte (Quality-of-Service, QoS) Sammelbegriff für quantitative Aspekte von Rechnernetzen und ihren Protokollen, z.B.: - Antwortzeit (z.B. auf die Reaktion eines Servers) - Durchsatz (übertragene Daten pro Zeiteinheit, nicht gleich der Bruttobitrate) - Verlust- und Fehlerrate (z.B. von Paketen in einem Netz bei drahtloser Übertragung) - Verfügbarkeit (Zeitanteil, in dem ein System einsatzfähig ist, z.B. ist Server 99.99% der Zeit verfügbar, dann 4,32 Minuten im Monat unverfügbar) wichtig zur Auswahl und Konfiguration von Netzwerkarchitekturen und Protokollen Ansätze: Messung, (stochastische) Analyse, Simulation Unterstützung durch Werkzeuge Rechnerkommunikation, Einführung 44 Einführung Beispiele von Rechnernetzen Konzept der Lehrveranstaltung Klassifikation von Kommunikationssystemen Protokolle Geschichte Literatur Rechnerkommunikation, Einführung 45 Geschichte einige Meilensteine vor 1970: leitungsvermitteltes Telefonnetz 60er Jahre: erste Konzepte von paketvermittelten Datennetzen, militärische Zwecke, Verbindung von Großrechnern 70er Jahre: ARPAnet, lokale Netze basierend auf Zufallszugriff (Aloha, Ethernet), Konzept des Internetworking 80er Jahre: Entwicklung von Protokollen wie TCP/IP, SMTP, DNS, FTP, Nutzung vor allem akademischer Bereich 90er Jahre: Entwicklung populärer Anwendungsprotokolle wie HTTP, Verbreitung von Web-Browsern, Kommerzialisierung, geschätzte Nutzeranzahl > 100 Millionen, Sicherheit wird wichtiges Thema, erste drahtlose Netze (WLAN) 00er Jahre: Crash, weiteres Wachstum, weitere Anwendungen, z.B. Internettelefonie, Peer-to-Peer-Systeme, Web2.0, weitere drahtlose Netze (Bluetooth, ZigBee, Wimax) ausführlicher in Kurose/Ross Rechnerkommunikation, Einführung 46 Einführung Beispiele von Rechnernetzen Konzept der Lehrveranstaltung Klassifikation von Kommunikationssystemen Protokolle Geschichte Literatur Rechnerkommunikation, Einführung 47 Literatur Auswahl aus den zahlreichen Lehrbüchern Kurose, Ross. Computer Networking: A Top-Down Approach Featuring the Internet. 4th Ed., Addison Wesley, 2008 (deutsche Übersetzung: Computernetzwerke: Der Top-Down-Ansatz, Addison Wesley, 2008) - einfache und anschauliche Einführung, Fokus auf Internet, TopDown-Ansatz, Hauptquelle der Vorlesung Leon-Garcia, Widjaja. Communication Networks: Fundamental Concepts and Key Architectures, 2nd Ed., McGraw Hill, 2004 - enthält auch Material über andere Netze, z.B. leitungsvermittelte Netze sowie analytische Aspekte W. Stallings. Data and Computer Communications, 8th Ed., Pearson Education, 2006 - der Autor hat große Zahl von Netzwerk-Büchern geschrieben mit jeweils unterschiedlichem Schwerpunkt, werden häufig aktualisiert Tanenbaum. Computer Networks. 4th Ed., Prentice Hall, 2003 (auch auf Deutsch erschienen) - Standardlehrbuch über Rechnernetze, war eins der ersten auf dem Markt Rechnerkommunikation, Einführung 48 Literatur Peterson, Davie. Computer Networks: A Systems Approach. Elesevier, 4th Ed., 2007 (auch auf Deutsch erschienen) - umfassende und sehr gut lesbare Einführung, macht viele Designentscheidungen nachvollziehbar Halsall. Computer Networking and the Internet. Addison-Wesley, 2005 - sehr gründlich in technischen Einzelheiten Comer. Computer Networks and Internets. 4th ed., Pearson Education, 2003 (auch auf Deutsch erschienen) - einfache Darstellung der wichtigen Mechanismen, weitere Bücher über Netze des Autors Comer, Stevens. Internetworking with TCP/IP, Volumes I, II, III. Prentice Hall, 2005, 2007, 2000 (auch auf Deutsch erschienen) - 3-bändiges Standardwerk über Transport- und Netzwerkschicht S. Tanenbaum, van Steen: Distributed Systems. Principles and Paradigms. 2nd Ed., Prentice Hall, 2006 (auch auf Deutsch erschienen) - Standardlehrbuch über Konzepte verteilter Systeme Rechnerkommunikation, Einführung 49