Betriebssysteme, WS 2018/19 wk - 1 - Betriebssysteme Kap. 5: Netzwerkmanagement Winfried E. Kühnhauser Wintersemester 2018/19 Winfried E. Kühnhauser CSI Technische Universität Ilmenau www.tu-ilmenau.de
Roadmap Anwendungsebene GUI MatLab Office ABS Google Earth Firefox Anwendungschnittstelle (Application Programmer s Interface, API) Betriebssystem Betriebssystem-Dienste Prozessmanagement Dateimanagement Netzwerkmanagement management Prozessor- Kommunikations- Speicher- E/A Betriebssysteme, WS 2018/19 wk - 2 -
Szenario Räumlich verteilte Systeme Arbeitsplatzrechner, Server, Laptops, Smartphones, dedizierte IT-Geräte Kommunikationsmedien (LANs, WLANs, WANs; diverse Technologien) WAN WLAN LAN Betriebssysteme, WS 2018/19 wk LAN -3-
Verteilte Dienste und Anwendungen Email, Web Netzwerk-Dateisysteme, ssh Grid-Computing, Cloud Computing Energieinfrastrukturmanagementsysteme Kommunikationsmanagementsysteme Verkehrsmanagementsysteme Fahrzeugmanagementsysteme... Rechnergrenzen überschreitende Kommunikation ein geeignetes Paradigma muss her Socket: standardisierte BS-Abstraktion zur botschaftenbasierten Kommunikation in heterogenen Systemen Betriebssysteme, WS 2018/19 wk -4-
Berkeley-Sockets botschaftenbasiert, send/receive-modell komplex in der Nutzung, da universell: Implementierungsbasis anwendungsnäherer Modelle (RPC, RMI, Blackboards, Tuple Spaces,... Kommunikationsmodelle) problemspezifisch konfigurierbar hinsichtlich Synchronität (send/receive-operationen) Verlässlichkeit (Garantien über Zustellung, Reihenfolgeerhalt) Kommunikationsdomäne (Internet, lokales System, Novell-Netz,...) Betriebssysteme, WS 2018/19 wk - 5 -
Die Socket-Abstraktion Socket: Steckdose ins Netzwerk (Betriebssystem-)Objekt, zu dem gesendet oder von dem empfangen wird mit Socket assoziiert: Name (z.b. IP-Adresse in der Internet-Domäne, Port-Nummer) Protokoll (z.b. TCP, UDP) Kommunikation: über Socket-Paare Sender Senden (= Schreiben zum Socket) Empfänger Empfangen (= Lesen vom Socket) Socket Protokoll (z.b. TCP) Socket Protokoll (passend zur Gegenseite) LAN, WAN Betriebssysteme, WS 2018/19 wk - 6 -
Sockettypen Namensschema Operationen Kommunikationsprotokolle ISO-OSI-Schichtenmodell Verschlüsselungsmechanismen Netzwerkmanagement BS: Integrationsframework Telematik / Rechnernetze Betriebssysteme, WS 2018/19 wk - 7 -
BS-Integration Socket als Betriebssystem-Abstraktion: Teil der API BS-Komponente: Integrationsrahmen für Protokollimplementierungen Prozess (z.b. ein Webbrowser) Betriebssystem Anwendungsschnittstelle (Application Programmer s Interface, API) Betriebssystem-Dienste Prozesse Dateien Sockets Prozess (z.b. ein Webserver) Anwendungsebene Prozessor- management Kommunikations- Speicher- TCP Level Socket Level UDP Level IP Level E/A Betriebssysteme, WS 2018/19 wk - 8 -
BS-Socketframework Socket API: socket(), bind(), send(), recv(),... Socket Level data_ready() data_ready() Sockets tcp_sendmsg() TCP Level tcp_rcv() udp_rcv() udp_sendmsg() UDP Level ip_build_xmit() IP Level ip_build_xmit() ip_rcv() dev_queue_xmit() Netzwerk-Treiber (LAN, WLAN,...) dev_queue_xmit() Betriebssysteme, WS 2018/19 wk - 9 -
Durch auf Anwendungsebene implementierte, Sockets nutzende Protokolle (smtp, http, ftp,...) Kommunikationsframework im BS Socket-Level TCP/UDP/ -Level IP-Level Netzwerktreiber Gerätecontroller-Hardware ( Netzwerkkarten ) werden die 7 Ebenen des ISO/OSI Schichtenmodells implementiert Inhalte dieser Ebenen: Telematik/Rechnernetze Betriebssysteme, WS 2018/19 wk - 10 -
Zusammenfassung Sender Empfänger Socket API: socket(), bind(), send(), recv(),... Socket Level data_ready() data_ready() Socket Socket Sockets tcp_sendmsg() TCP Level udp_sendmsg() UDP Level tcp_rcv() udp_rcv() ip_build_xmit() IP Level ip_rcv() ip_build_xmit() Sockets dev_queue_xmit() Netzwerk-Treiber (LAN, WLAN,...) dev_queue_xmit() BS-Abstraktion zur (Rechnergrenzen überschreitenden) Kommunikation botschaftenorientiertes Kommunikationsmodell vielfältig konfigurierbar (Protokolle, Verlässlichkeit, Synchronität,...) weitgehend unabhängig von Netzwerk-Technologien als Betriebssystem-Abstraktion Teil der API BS-Komponente: Integrationsrahmen für Protokollimplementierungen Betriebssysteme, WS 2018/19 wk - 11 -
Integration in BSe Prozess (z.b. ein Webserver) Anwendungsebene Prozess (z.b. ein Webbrowser) Betriebssystem Anwendungsschnittstelle (Application Programmer s Interface, API) Betriebssystem-Dienste Socket API: socket(), bind(), sendto(), recv(),... Socket Level data_ready() data_ready() Prozesse Dateien Sockets tcp_sendmsg() TCP Level tcp_rcv() udp_rcv() udp_sendmsg() UDP Level management ip_build_xmit() IP Level ip_build_xmit() Prozessor- Kommunikations- Speicher- E/A Betriebssysteme, WS 2018/19 wk - 12 -