faecher:informatik:oberstufe:netzwerke:cs_p2p:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Nächste Überarbeitung
Vorherige Überarbeitung
faecher:informatik:oberstufe:netzwerke:cs_p2p:start [15.12.2021 19:09] – angelegt sbelfaecher:informatik:oberstufe:netzwerke:cs_p2p:start [15.12.2021 19:40] (aktuell) – [Peer-to-Peer Architektur] sbel
Zeile 1: Zeile 1:
 ====== Aufgabenteilung in Netzwerken ====== ====== Aufgabenteilung in Netzwerken ======
  
-Im Abschnitt [[..:kommunikationsarten_und_tcp:start|Kommunikationsarten]] wurde bereits ein denkbare Aufgabenteilung in Netzwerken beschrieben: Die Client-Server Architekur.+ 
 +===== Client-Server Prinzip ===== 
 + 
 +Im Abschnitt [[..:kommunikationsarten_und_tcp:start|Kommunikationsarten]] wurde bereits ein denkbare Aufgabenteilung in Netzwerken beschrieben: Die Client-Server Architektur.
  
 <WRAP center round tip 90%> <WRAP center round tip 90%>
-Ein Server ist ein Programm, das Dienste zur Verfügung stellt, häufig wird es auf einem Server (Gerät) dauerhaft im Hintergrund ausgeführt.+Ein **Server** ist ein Programm, das Dienste zur Verfügung stellt, häufig wird es auf einem Server (Gerät) dauerhaft im Hintergrund ausgeführt.
 </WRAP> </WRAP>
 +
 +<WRAP center round tip 90%>
 +Ein **Client** ist ein Programm, das auf die Dienste eines Serverprogramms zugreift. Es wird meist auf dem Clientgerät ausgeführt, z.B. dem Laptop oder Smartphone, mit dem ein Benutzer mit Netzwerkdiensten in Interaktion tritt.
 +</WRAP>
 +
 +"Client" und "Server" sind also mehrdeutige Begrifflichkeiten, sie können sowohl die Programme als auch die Geräte bezeichnen.
 +
 +Für zahlreiche Anwendungsfälle ist es sinnvoll, eine  Client-Server-Architekur anzustreben: Beispielsweise möchte man jederzeit Mails empfangen können, auch wenn man gerade nicht am Laptop sitzt. Es macht daher Sinn, diese Aufgabe an einen Mailserver zu delegieren, mit dem der Clientcomputer nur dann interagiert, wenn er prüft, ob neue Mails angekommen sind.
 +
 +{{ :faecher:informatik:oberstufe:netzwerke:cs_p2p:clientserver.drawio.png?500 |}}
 +
 +Andere Beispiele sinnvoller Client-Server Anwendungen sind: 
 +
 +  * **Datenbankserver**: Zentrale Datenhaltung, regelbasierter Zugriff mit Clientprogrammen.
 +  * **Proxyserver**: Vermittler zwischen dem Clientprogramm und dem Kommunikationsziel. Zur Zwischenspeicherung von Inhaltzen oder der Umgehung von Netzwerkrestriktionen.
 +  * **Webserver**: Stellen Webseiten zur Verfügung, erlauben den Zugriff auf APIs von Webanwendungen und Apps.
 +  * **Printserver**: Verteilen und managen Druckaufträge in einem Netzwerk.
 +  * * **Cloud-Server**: Server die Ressourcen wie Rechenkapazität, Speicherplatz und Netzwerkbandbreie zur Verfügung stellen, ohne dass der Anwender tatsächliche Servergeräte betreiben muss. (AWS, Azure u.ä.)
 +
 +**Nachteile:** 
 +
 +  * Die **Zentralisierung** schafft potentiell einen "Single Point Of Failure" - wenn das Serversystem nicht mit genügend Redundanz versehen ist, führt ein Ausfall des Servers dazu, dass unter Umständen sehr viele Clientgeräte und Dienste ohne Funktion sind. Wenn der Datenbankserver ausfällt, kann keine der Sekretärinnen mehr auf die Schülerdaten zugreifen, gleichgültig wie viele funktionierende PCs im Sekretariat vorhanden sind.
 +  * Die Hardware für Servergeräte muss je nach Anwendungsfall sehr leistungsfähig sein, um die Last zahlreicher gleichzeitiger Zugriffe performant verarbeiten zu können.  
 +  * Die Bündelung weltweiterRechenkapazitäten in Cloud-Server-Rechenzentren hat in der Vergangenheit bei Ausfällen in Amazon, Google oder Microsoft Rechenzentren teilweise dazu geführt, dass große Teile des Internets (Netflix, Spotify u.ä.) ohne Funktion waren.
 +
 +===== Peer-to-Peer Architektur =====
 +
 +Anders als innerhalb einer Client-Server-Architektur sind in einem Peer-to-Peer Netz alle Geräte "gleichberechtigt": Auf allen Geräten werden Programme ausgeführt, die sowohl Dienste zur Verfügung stellen als auch diese Dienste nutzen. Jedes Gerät ist also Client und Server zugleich.
 +
 +{{ :faecher:informatik:oberstufe:netzwerke:cs_p2p:p2p.drawio.png?500 |}}
 +
 +Beispiele für Dienste und Programme die eine Peer-to-Peer Architektur verwenden sind:
 +
 +  * Briar: Ein dezentraler verschlüsselter Messenger.
 +  * Bittorrent: Dateiverteilungssoftware, kann sehr effizient große Daten mengen verteilen.
 +  * Gnutella: In Filius ist ein etwas in die Jahre gekommenes P2P Programm implementiert, das zum Dateiaustausch verwendet werden kann.
 +
 +In einem P2P Netz sind die Teilnehmenden Geräte meist sehr unterschiedlich was Rechenleistung, Bandbreite und andere Spezifikationen angeht. Vorteile sind vor allem hohe Autonomie der Teilnehmenden sowie -- bei guter Implementation der Protokolle -- eine hohe Verfügbarkeit und Eigenschaften wie Zensurresistenz.
 +
  
  • faecher/informatik/oberstufe/netzwerke/cs_p2p/start.1639595353.txt.gz
  • Zuletzt geändert: 15.12.2021 19:09
  • von sbel