| Protokoll | |||||
|
Ein Protokoll besteht aus einer Reihe von Regeln und Vereinbarungen über das Übertragen von Informationen in einem Netzwerk. Durch diese Regeln werden der Inhalt, das Format, die Wiederholungsrate, die Reihenfolge und die Fehlerkontrolle der im Netzwerk ausgetauschten Nachrichten und Daten festgelegt. Protokolle regeln durch Syntax, Semantik und Synchronisation die Kommunikationen in Netzwerken (Netzwerkprotokoll) und in der Hardware und Software. In Protokollen wird die physische Verbindung geregelt, die Art und Weise der Verbindung, die Datenflusskontrolle (Handshaking), das Fehlerkorrekturverfahren, die Fehleridentifizierung und Fehlerprotokollierung (Logging und Fehlerausgabe) sowie die Formatierung des Inhaltes einer Übertragung. Weiterhin werden Verhaltensweisen bei Auftreten einer Unterbrechung der Konnektion festgelegt. Internetprotokolle, Protokollstapel und Referenzmodell Der Erfolg des Internet hängt wesentlich von den zugrundeliegenden Protokollen ab. Die Grundlegensten sind TCP (Transmission Control Protocol) und IP (Internet Protocol). Protokolle treten häufig als Protokollstapel (Kombination von Protokollen) und in Schichten als Referenzmodell auf (z.B. OSI-Schichtenmodell). Ein Referenzmodell ist eine Softwarearchitektur anhand der sich auch die Prinzipien einer solchen ablesen lassen wie Datenkapselung, Modularität und Geheimnisprinzip. Die saubere Definition der Schnittstellen, der Handshake und die Daten- und Kommunikationskontrolle sind dabei wesentlich. Protokolle kommen auch als Protokollfamilie (Internetprotokollfamilie), als Softwarschnittstelle oder API oder als Konvention (z.B. Aufrufkonvention, Calling Convention) vor. Bekannte Protokolle neben den bereits erwähnten sind: UDP, NNTP, SNTP, IMAP, POP, SMTP, L2TP, SSH, FTP, Telnet, HTTP, UDS oder DHCP. |
|||||
| Siehe auch: TCP-IP HTTP FTP Transfer-Protocol Ethernet Token-Ring POP3 IPv6 IMAP4 Übertragungsprotokoll | |||||
| Es wurden weitere Begriffe gefunden: | |||||
| TCP-IP-Referenzmodell | |||||
|
Das TCP/IP-Referenzmodell ist ein Refernzmodell für die Internetprotokollfamilie. Es handelt sich um Schichten, welche die Kommunikation in TCP/IP Netzwerken gliedern. Das TCP/IP-Referenzmodell ist auf die Internet-Protokolle zugeschnitten. Die Internet-Protokolle vermitteln Datenpakete über mehrere Punkt-zu-Punkt-Verbindungen (sogenannte Hops) weiter. Auf dieser Grundlage stellen sie Verbindungen zwischen Netzwerkteilnehmern über mehrere Hops her. Die Schichten sind: (von unten nach oben) Netzwerkschicht (entspricht OSI 1-2), Internetschicht (OSI 3, Beispiel: ARP, IPv4, IPv6), Transportschicht (OSI 4, Beispiel: TCP), Anwendungsschicht (OSI 5-7, Beispiel: HTTP). |
|||||
| Siehe auch: OSI-Schichtenmodell Internetprotokollfamilie TCP-IP protokoll ARP IPv4 IPv6 HTTP | |||||
| FTP | |||||
|
File Transfer Protocol. FTP ist ein Netzwerkprotokoll zur Übertragung von Dateien im Internet und in lokalen Netzwerken, bei denen das TCP/IP-Protokoll zur Anwendung kommt. FTP befindet sich auf Schicht 7 des OSI-Schichtenmodells (Application Layer/Anwendungsschicht). Via FTP kann man Daten von einem Client zu einem Server oder vice versa übertragen oder auch clientgesteuert zwischen 2 Servern. Bei FTP wird für die Datenübertragung und die Steuerung jeweils eine eigene Leitung verwendet. Ein Standard Port für eine FTP Sitzung ist der Port 21 (Control Port des Servers): der FTP-Client beginnt eine FTP Sitzung, indem er eine Verbindung zum Port 21 (bzw. den jeweiligen Control Port des Servers) über TCP aufbaut. Der FTP-Client sendet über diese Leitung Befehle zum Server, die dieser nach einer eventuellen Authentifizierung mit einem Statuscode quittiert. Die Übertragung der Daten und Verzeichnislisten erfolgt separat über den Data Port (standardmässig Port 20). Hierbei wird i.d.R. pro Vorgang eine TCP-Verbindung verwendet. FTP-Modi: Active Mode und Passive Mode Dabei gibt es zwei verschiedene Modi eine solche Verbindung aufzubauen: den Active Mode (Aktives FTP) und den Passive Mode (passives FTP): der Active Mode (Aktives FTP) zeichnet sich dadurch aus, dass der FTP-Client einen zufälligen Port öffnet und dem Server über diesen Port die Port Nummer und seine IP-Adresse durch das PORT-Kommando mitteilt. Es handelt sich hierbei i.d.R. um einen Port des Clients von Port 1023 an aufwärts. Beim Passive Mode (passives FTP) sendet der FTP-Client ein PASV-Kommando an den Server, woraufhin dieser einen Port öffnet und die Port Nummer mitsamt seiner IP-Adresse an den Client übermittelt. Diese Port Nummer wird dann zum Server Port, der Client Port ist i.d.R. eine Port Nummer ab 1023 aufwärts. FXP Es kann aber auch FXP vorliegen (File Exchange Protocol): beim FXP werden Dateien zwischen 2 FTP-Servern ausgetaucht, ohne dass sie über einen FTP Client laufen müssen. Dabei wird der Active und Passive Mode gleichzeitig eingesetzt: Ein FTP-Client sendet an einen FTP-Server ein PASV-Kommando (Passive Mode): daraufhin erhält er die Port Nummer des Server Ports und die IP-Adresse des FTP-Servers. Danach sendet der FTP-Client ein PORT-Kommando an einen zweiten FTP-Server (Active Mode); jedoch enthält dieses PORT-Kommando als Argument nicht die eigene IP-Adresse und Port Nummer, sondern die Antwort des ersten FTP-Servers, wodurch der zweite FTP-Server eine Verbindung zum ersten FTP-Server aufbaut. Um die Datenübertragung zu starten sendet der FTP-Client das RETR-Kommando an den zweiten FTP-Server und das STOR-Kommando an den ersten FTP-Server. Falls einer der Server keinen Passive Mode unterstützt, kann auf dem anderen Server ein PASV-Kommando ausgeführt werden (Alternative Mode). Die FXP-Übertragungen können durch den CPSV-Befehl (statt PASV) oder durch SSCN (Set Secured Client Negotiation) sicherer gemacht werden. Diese Methoden sind jedoch anfällig für Man-in-the Middle Attacken, da die Zertifikate nicht überprüft werden. FTP und Sicherheit Um FTP sicherer zu machen kann man Secure FTP (Secure File Transfer Protocol), SSH File Transfer Protocol (SFTP: eine Weiterentwicklung von Secure Copy) verwenden, oder gar ein anderes Protokoll: MBS/IP (Multi-purpose Business Security over IP). Bei diesen Massnahmen ist es möglich, die FTP-Übertragungen mittels SSL oder TLS zu verschlüsseln. Anonymous FTP und WebFTP Beim Anonymous FTP, welches oft von Bildungseinrichtungen oder Anbietern sogenannter FTP-Mirrors eingerichtet wird, existiert neben den üblichen Benutzerkonten ein Konto "anonymous" oder "ftp", in das man sich ohne (oder beliebiges) Passwort einloggen kann. Beim WebFTP wird der Zugriff auf FTP-Server via HTTP ermöglicht. |
|||||
| Siehe auch: HTTP Client-Server TCP-IP OSI-Schichtenmodell protokoll netzwerk | |||||
| Common-Internet-File-System | |||||
|
Das Common Internet File System (CIFS) wurde 1996 von Microsoft vorgestellt und ist eine Erweiterung und Weiterentwicklung des Server Message Block-Protocols (SMB-Protocol). In einem Netzwerk mit Servern und Clients regelt CIFS die gemeinsame Benutzung von Internet- und Intranetdateien. CIFS basiert auf NetBIOS over TCP/IP (NetBT oder NBT) und SMB. Ausser der Datei- und Druckerfreigabe verfügt CIFS über Dienste wie Windows-RPC (Remote Procedure Call) oder den NT-Domänendienst. Die Namensauflösung erfolgt über den NBT-Broadcast (NetBIOS over TCP/IP-Broadcast) bzw. den NBT Name Service oder DNS (Domain Name System). |
|||||
| Siehe auch: Server-Message-Block-Protocol netzwerk TCP-IP NetBIOS Domain-Name-Service NetBIOS-over-TCP-IP Client-Server windows Microsoft RPC | |||||
| Hypertext-Coffee-Pot-Control-Protocol | |||||
|
Hypertext Coffee Pot Control Protocol (HTCPCP) ist ein Protokoll, das zur Fernsteuerung und -überwachung von Kaffeemaschinen dient :-) Es wurde im RFC-2324 (Requests For Comments) definiert. Es wurde auch einmal tatsächlich implementiert! In den Requests for Comments wird öfter auch mal Schabernack getrieben. So wurde in RFC-1149 ein Internet Protocol over Avian Carriers (IPoAC) (Vogelbasiertes Internet-Protokoll) vorgeschlagen. Das IPoAC ist ein drahtloses Netzwerkprotokoll für Punkt-zu-Punkt Verbindungen. Es findet vor allem in Metropolitan Area Networks Verwendung. Geringe Wartungs- und Produktionskosten, die Avian Carrier sind selbstreproduzierbar. Das IPoAC verfügt über Selbstheilungskräfte, intrinsische Kollisionsvermeidung und eine Wegfindungsfunktion, die ohne Router auskommt. Die Avian Carrier können sogar Würmer aufspüren und vernichten und aus Spam und Würmern Energie produzieren. Nachteil sind die langen Ping-Antwortzeiten. Deswegen eignet es sich nicht unbedingt für Online-Realtime-Egoshooter-Multiplayer Spiele, eher für Online Schach ohne Uhr. Ausserdem läuft es ständig Gefahr von dem HAWK-System abgefangen zu werden. In RFC-2795 wurde die Unendlich-Viele Affen-Theorie diskutiert: wie kann eine unendliche Anzahl von Affen koordiniert werden, so dass die Werke von Shakespeare entstehen? |
|||||
| Siehe auch: Requests-for-Comments Jonathan-Postel HTTP RFC-822 Java | |||||
| SOAP | |||||
|
Simple Object Access Protocol. Eine XML Grammatik (ähnlich XML-RPC), welche die plattformunabhängige Kommunikation von Applikationen über das Internet ermöglicht. Diese Spezifikation und Referenzimplementierung für Remote Procedure Calls (RPC) zwischen Internetanwendungen wurde in Anlehnung an die CORBA-Spezifikation (Common Object Request Broker Architecture) entwickelt. SOAP unterstützt Mechanismen des Procedure Callings wie beispielsweise Exception Handling, sowie weitere Transportprotokolle neben HTTP mit TCP (UDP, HTTPS, XML,...). |
|||||
| Siehe auch: CORBA RPC XML HTTP TCP-IP UDP OSI-Schichtenmodell | |||||
| Fibre-Channel | |||||
|
Fibre Channel (FC) ist ein Protokoll um Hochgeschwindigkeits-Netzwerke mit Daten zu versorgen. FC ist geeignet für Massenspeicher und Netzwerke. Es handelt sich um einen offenen Standard, der durch die ANSI und die OSI definiert wurde. Es werden höhere Protokolle wie das IP-Protocol, ATM (Asynchronous Transfer Mode), IEEE 802, SCSI oder HIPPI (High Performance Parallel Interface) unterstützt. Fibre Channel war konzipiert, um Fast Ethernet, LAN-Backbones und FDDI zu ersetzen. FC verfügt über eine serielle Übertragungstechnologie, geringe Latenzen und Fehlerraten und ist in die Hardware integriert. Neben dem Datentransport wird die die Übertragung der Daten geregelt. In FC ist jedoch kein eigener Befehlssatz implementiert. Fibre Channel kümmert sich ausschliesslich um den Transport der Datenpakete zwischen den Endteilnehmern. Es wird oft bei SAN-Netzwerken (Storage Area Network) eingesetzt. Fibre Channel wird über Kupfer oder Glasfaser betrieben und erreicht Geschwindigkeiten zwischen 3 und 8 GB/s. Fibre Channel ordnet jedem Netzwerkteilnehmer einen World Wide Node Name (WWNN) zu. Ports werden mit einem World Wide Port Name (WWPN) versehen. Bei diesen Identifizierungsmerkmalen handelt es sich um einen (hexadezimalen) 64-Bit Code. Fibre Channel Topologien Es gibt unterschiedliche Fibre Channel Topologien: Die Fibre Channel Switches Fabric stellt eine Punkt-zu-Punkt Verbindung zwischen den Netzwerk-Teilnehmern her. Bei FC-SW werden die Netzwerk-Endteilnehmer über einen Channel Switch oder Director verbunden. Die Fibre Channel Arbitrated Loop stellt einen logischen Bus dar, und wird oft in Clustern und bei SANs verwendet. Es können 2 ^ 7 -1 Endteilnehmer versorgt werden. Fibre-Channel Switches, Disk Arrays Bei SAN-Netzwerken die auf Fibre Channel basieren spielen Fibre-Channel Switches eine zentrale Rolle. FC-Switches stellen die Verbindung her zwischen den Hosts und den Storage-Systemen. Dabei handelt es sich um Backup-Systeme oder beispielsweise Disk-Arrays. Disk Arrays verfügen über mehrere Festplattensysteme (Plattensubsystem), mit deren Kapazität Server versorgt werden. Bei Disk Arrays stehen verschiedene Features wie RAID, Storage-Virtualisierung oder Partitionspiegelungen zur Verfügung. |
|||||
| Siehe auch: SAN Festplatte Cluster Host-Bus-Adapter LAN Backbone Ethernet FDDI | |||||
| Link-State-Protokoll | |||||
|
Das Link-State-Protokoll wird von Routern im Internet verwendet um deren Datenbasis mit Wegeinformationen auszustatten. Link State setzt CIDR (Classeless Inter Domain Routing) und Subnetmasken sowie Variable Length of Subnet Mask (VLSM) ein. Routing-Informationen Das Link State Protokoll wird insbesondere eingesetzt, wenn sich Routing-Informationen oft ändern: neue Routing-Wege werden beim Link-State durch Link State Announcements bzw Advertisements über Multicast zwischen aufeinanderfolgenden Routern bekannt gemacht und in die komplexen Routing-Tabellen eingetragen. In den jeweiligen Routing-Datenbanken wird das gesamte Wegesystems des jeweiligen Netzes eingetragen. Link-State arbeitet mit einem Link-State-Algorithmus der höhere Speicherkapazitäten als der Distance Vector Algorithmus einsetzt. Konkret wird eine Shortest-Path-First-Algorithmus implementiert der auf einem Shortest-Path-First-Baum basiert. Ein SPF-Baum ist ein Graph mit einem minimalen Spannbaum. Die Routing-Bereitschaft in der Nachbarschaft wird durch das Hello-Protokoll ermittelt. Der Link-State-Algorithmus ist eine Implementierung des Dijkstra-Algorithmus. Ein wichtiges Link-State-Protokoll ist Open Shortest Path First. |
|||||
| Siehe auch: Multicast Subnetmaske Router | |||||
| IPv4 | |||||
|
IPv4 ist das gegenwärtig verwendete IP-Protokoll im Internet. Es hat einen 32-Bit Adressraum und kann damit ca. 4,295 Milliarden Rechner adressieren. Die IP-Adressen werden dezimal in 4 Blöcken notiert: jeder Block umfasst 8-Bit und damit einen Wertebereich von 0 bis 255, z. B. 80.237.132.122. IP-Adressen und Protokolle Die IP-Adresse eines Rechners in einem Netzwerk muss eindeutig sein. IPv4 ist ein geroutetes Protokoll und ist anzusiedeln auf der Internetschicht (Schicht 2) des TCP/IP Referenzmodells bzw. der Vermittlungsschicht (Network, Schicht 3) des ISO-OSI Schichtenmodells. Auf IPv4 setzen weitere Protokolle auf, wie z. B. TCP, UDP oder ICMP. IP-Adressraum IPv4 ist in 5 Klassen unterteilt (A-Netz, B-Netz, C-Netz, D-Netz, E-Netz) die sich hauptsächlich in der Aufteilung der IPv4 Adressen unterscheiden. Eine IPv4 Adresse wird aufgeteilt in eine Netz-ID und eine Host-ID. Je grösser die Netz-ID, desto mehr Netze können adressiert werden (und desto weniger Rechner innerhalb eines Netzes). Je grösser die Host-ID, desto mehr Rechner können innerhalb eines Netzes adressiert werden (und desto geringer ist die Anzahl der konfigurierbaren Netze). Die Aufteilung in Klassen entspricht also den unterschiedlichen Bedürfnissen der Netzteilnehmer. Das Klasse A Netz verfügt über eine Netz-ID von 7 Bit und eine Host-ID von 24 Bit. Das erste Bit ist eine Null zur Identifikation eines Klasse A Netzes. Die Adressen reichen von 0.0.0.0 bis 127.255.255.255. Die maximale Anzahl adressierbarer Rechner ist 2 ^ 24 - 2. Zwei Adressen fallen weg, da die erste Adresse für die Identifikation des Netzes selber gebraucht wird und die letzte Adresse für einen Broadcast reserviert ist (damit können alle Netzteilnehmer auf einmal adressiert werden). Das Class A Netz verfügt über 128 konfigurierbare Netze die ihrerseits jeweils 16.777.214 Rechner ansteuern können. Klasse A Netze sind grossen Organisationen (meist aus den USA) und Ländern vorbehalten. Ein Klasse B Netz hat eine Netz-ID von 14 Bit (Klasse C 21 Bit) und eine Host ID von 16 Bit (Klasse C 8 Bit). Die Anzahl der Netze bei Klasse B (Adressbereich: 128.0.0.0 - 191.255.255.255) beträgt 16348 (Klasse C (Adressbereich: 192.0.0.0 bis 223.255.255.255) 2.097.152), die Anzahl der Hosts pro Netz 65.534 (Klasse C 254). Das Klasse D Netz (224.0.0.0/4 bis 239.255.255.255) ist für Multicast-Gruppen reserviert und das Klasse E-Netz für zukünftige Anwendungen. Classless-Inter-Domain-Routing Mit Einführung des Classless Inter-Domain Routing (CIDR) 1996 ist das Klassenkonzept eigentlich überholt, da CIDR die Anzahl der Routingtabellen drastisch verringert und den 32 Bit Adressraum besser einsetzt. Das CIDR verwendet nur noch eine Netzmaske zur Aufteilung der 32 Bit Adresse in Netz- und Host-ID (Subnetting und Supernetting entfällt) und führt bei der Notation Suffixe ein: der Suffix gibt die Anzahl der 1 Bit Anteile der Netzmaske an, z. B.: 192.168.2.7/24 entspricht der Notation 192.168.2.7 mit der Netzmaske 255.255.255.0. In dualer Notation der Netzmaske 11111111.11111111.11111111.00000000 gibt es 3 x 8 = 24 1-Bit-Stellen. Bei IPv4 gibt es Sonderadressen: 10.0.0.0/8 ist ein privates Netzwerk der Klasse A, 14.0.0.0/8 ist ein öffentliches Datennetzwerk, 127.0.0.0/8: Localhost bzw. lokaler Computer, 192.168.0.0/16: privates Netzwerk der Klasse C (z. B. Heimnetzwerk oder internes Firmennetzwerk hinter einem Router für kleinere Firmen) oder 255.255.255.255 ist für Broadcast reserviert. Subnetzmasken Um grössere Netzwerke besser zu administrieren, den Datendurchsatz zu verbessern oder heterogene Netzwerktopologien besser zu verbinden hat man Subnetzmasken eingeführt: die Host-ID der IPv4 Adresse wird in 2 Teile unterteilt: die Host-ID und die Subnet-ID. Supernetting Das Gegenteil ist das Supernetting: um eine grössere Anzahl von Hosts in einem Netz zu adressieren wird die Netz-ID verkleinert und die Host-ID vergrössert. IPv4 und IPv6 - Koexistenz IPv4 koexistiert noch lange Zeit mit IPv6 (bis ca. 2025). Da die IPv4 Adressen nicht mehr ausreichen werden, um alle Rechner mit IP-Adressen zu versorgen, wird es zu einer baldigen Umstellung auf IPv6 im Internet kommen (vgl IPv6 Tag am 8 Juni 2011). Viele Jahre lang werden IPv4 und IPv6 nebeneinander und auch gleichzeitig zur Verfügung stehen, z.B. im Dual-Stack Betrieb bzw. in Form einer hybriden Implementierung. Die heutige Form von IPv4 ist übrigens nur aus historischen Gründen im 32-Bit Adressraum angesiedelt um den in den 60er und 70er Jahren, während der Entstehungsphase des IPv4 Protokoll knappen Speicherplatz entgegen zu kommen. Laut Vinton Cerf hatte man schon in den 70ern einen 64- bzw. 128-Bit Adressraum anvisiert, der jedoch aus den besagten Gründen nicht für IPv4 verwirklicht wurde. Techniken um IPv6 Adressen in einem IPv4 Netzwerk zu transportieren sind Tunneling und IPv4-to-IPv6 Mapping. Bei der Tunnelung von IPv6 Paketen in IPv4 -Netzwerken wird 6to4 (STF, Six to Four) als Protokoll eingesetzt. Eine weitere Möglichkeit, um IPV6-Pakete zuTunneln, ist das Kommunikationsprotokoll Teredo. |
|||||
| Siehe auch: IPv4-Technologien IPv6 IP-Fragmentierung IP-Adresse Datenpaket Internetprotokollfamilie 6to4 Teredo subnetting Nameserver | |||||