KAPITEL XI) TRANSPORTPROTOKOLLE DER OSI-SCHICHTEN 3 UND 4 1. Notwendigkeit von Transportprotokollen - Unterscheidung von kleineren Netzwerken ist möglich (b. Ethernet u. Token-Ring nicht möglich!) - Angaben über Menge der zu versendenden Daten wird möglich, keine Beschränkung auf bestimmte Datenmenge erforderlich - Vertreter von Transportprotokollen auf OSI 3 und 4 sind u.a.: TCP/IP, SPX/IPX, NetBEUI, AppleTalk. 2. NetBEUI - = NetBIOSExtendedUserInterface, Protokoll bei PC-Server-Systemen von IBM (LANManager, OS/2) und in abgewandelter Form bei Microsoft-Netzwerksystemen (XP, 2000, NT, WfW, WIN 95/98). - NetBEUI verfügt über Verwaltungsfunktion SAP (=ServerAdvertisingProtocol), welches die Suche nach einem Server im Netzwerk ermöglicht. - NetBEUI verfügt über den SlidingWindowAlgorithmn: dieser ermöglicht die optimale situationsgerechte Anpassung der Datenpakete der Ebene OSI 3. - NetBEUI ermöglicht einen „Kreditrahmen“ , d.h. mehrere Datenpakete kontinuierlich zu versenden, ohne der Erfordernis der Bestätigung jedes einzelnen Paketes. Durch die stattdessen stattfindende Bestätigung einer vordefinierten Anzahl von Datenpaketen wird eine Erhöhung der Übertragungsgeschwindigkeit erreicht. - mit NetBEUI lässt sich auch NBT (=NetBIOS over TCP/IP) nutzen, d.h. die Bereitstellung von NetBIOS-Funktionalitäten unter Nutzung von TCP/IP in OSI 3 und 4. 3. NetBIOS - = NetworkBasicInputOutputSystem, = IBM-Protokoll, erstreckt sich auf OSI 3, 4 und 5 (damit kein echtes Transportprotokoll!), ursprünglich als Peer-to-PeerKommunikationsprotokoll Mainframe-Terminal entwickelt - NetBIOS nutzt NetBEUI als Transportprotokoll. - NetBIOS liefert auf OSI 4 so genannte streams (mit jeweils eigenem Namen, Stream-ID, Netzwerknamen (Domain), NetBIOS-Stationsnamen) die eine Sammlung von Funktionen für den bidirektionalen Datentransport bieten. - NetBIOS ermöglicht die Nutzung unterschiedlicher Topologien und Übertragungsprotokolle, wobei auf OSI 2 die Kombination von einem NetBIOS-Namen mit den physikalischen Hardwareadressen (Mac-Adressen) der beteiligten Netzwerkkarten erforderlich ist. 4. IPX/SPX - = InternetworkPacketExchange / SequencedPacketExchange - Standardprotokoll in Novell-Netzwerken (-> Novell-Requester f. Novell-Netzwerkdienste) 4.1. Merkmale von IPX - liegt auf OSI 3 - sorgt für die Abbildung der IPX-Adresse auf die Mac-Adressen und Wegewahl zwischen Netzen - Aufbau der IPX-Adresse: zwei 32-Bit-Zahlen, erste 32-Bit-Zahl benennt die Teilnetze, zweite 32-Bit-Zahl bestimmt Knoten. 4.2. Merkmale von SPX - auf OSI 4, stellt streams zur Kommunikation, auch mit SAP-Funktionalität, zur Verfügung 5. AppleTalk - Basis für Apple-Talk ist NetBIOS - Apple-Talk umfasst die Protokolle LocalTalk, EtherTalk (OSI 2-Übertragungsprotokolle) und EthernetSNAP (parallel zu anderen Varianten z.B. 802.2 verwendbar) - Transportprotokolle sind das DatagramDeliveryProtocol (DDP auf OSI 2) und das AppleTalkTransactionProtocoll (ATP). - bei Apple-Talk wird das Gesamtnetz in zones (= domains = Teilnetze) eingeteilt, innerhalb derer die einzelnen Netzknoten liegen (Server, Rechner, Drucker u.s.w.). 6. TCP / IP 6.1. Aufgaben der Protokolle der TCP / IP-Protokollfamilie - Ziel diese Protokollfamilie: Standardprotokoll zur Kommunikation zwischen unterschiedlichsten Rechnersystemen - TCP / IP-Protokollsuite umfasst: a. Regeln für Kommunikationsaufbau und Kommunikationsabbau innerhalb eines Netzes. b. Regeln für Kommunikation in unterschiedlichen, miteinander verbundenen Netzen. - TCP = TransmissionControlProtocol : stellt gesicherte Verbindung zwischen zwei Rechnersystemen her 6.2. Einordnung von TCP / IP in das OSI-Referenzmodell - TCP/IP basiert auf einem DoD-4-Schichtenmodell: a. Process / Application-Schicht ( Telnet, FTP, SMTP, http), entspricht OSI 5 bis 7 b. Host-To-Host-Schicht ( TCP, UDP ), entspricht OSI 4 - TCP = Protokoll für gesicherte Verbindung zwischen zwei Systemen (Sicherung = Bestätigung für empfangene Datenpakete, erhält Sender innerhalb gewisser Zeit keine Bestätigung, wird entsprechendes Paket erneut versandt) - TCP garantiert die Erhaltung der Datenpaketsequenzreihenfolge - Herstellung einer logischen Verbindung zwischen den Endsystemen (jede logische Verbindung erhält zur Unterscheidung dazu paralleler Verbindungen eine Portadresse) - UDP ist ein ungesicherter verbindungsloser Dienst, UDP wird von TFTP und NFS für den Datenaustausch genutzt. c. Internet-Schicht ( IP ), entspricht OSI 3 - arbeitet mit den Protokollen IP, ICMP, ARP, RARP - IP (= InternetProtokoll) sorgt für die Suche des idealen Weges zwischen den beteiligten Stationen (=Routing) - ICMP (=InternetControlMessageProtocol) dient dem Austausch von Servicemeldungen z.B. zwischen Routern und Hostsystemen. - ARP (= AdressResolutionProtocol) übersetzt die IP-Adressen in Mac-Adressen (Umsetzung von Softwareadressen in Hardwareadressen). Für Weiterleitungsadressierung nur IP-Adresse, erst beim Empfänger Zuordnung mittels einer von ARP aufgebauten Tabelle. - RARP (=ReverseAdressResolutionProtocol) dient der Umsetzung von Hardwareadressen in IP-Adressen. (Anwendung: Diskless Workstations erfragen beim Systemstart die eigene IPAdresse via RARP bei einem anderen System und nutzen danach TCP/IP zum Initialisierungsabschluss). d. Network-Access-Schicht (Ethernet, Tokenring, PPP, SLIP), entspricht OSI 2 - ggf. wird bestimmte Protokollvariante vorgeschrieben, z.B. „Ethernet SNAP“. - PPP (=PointtoPointProtocol) und SLIP (=SerialLineInternetProtocol) werden immer dann genutzt, wenn statt LAN-Verbindungen analoge Leitungen verwendet werden. 6.3. Adressen und TCP/IP - Voraussetzung für Netzwerkfunktion und Datenpaketvermittlung ist die eindeutige Identifizierbarkeit aller Teilnehmer. - Im Rahmen von TCP/IP sind verschiedene Adressen vertreten: Mac-Adresse, IP-Adresse, Port-Adresse, Network- und Hostadresse, Subnet-Mask-Adresse. 6.3.1. Mac-Adresse - MAC (= MediaAccessControl) ist die weltweit eindeutige Hardwareidentifikation der Netzwerkkarte. 6.3.2. IP-Adresse - eindeutige Softwareadresse bezüglich aller erreichbaren Netzwerkknoten (vier Bytes), frei vergebbar, wenn der Rechner nicht direkt mit anderen Netzen verbunden ist ( bei Internetanbindung eines Rechners ist eine weltweit eindeutige IP-Adresse erforderlich (Anforderung der verwendbaren Adressen von autorisierten Stellen) - Angabe von IP-Adressen in der „conial form“, d.h. die vier Bytes werden jeweils einzeln in Dezimalschreibweise mit Punkten voneinander getrennt angegeben. 6.3.3. Port-Adresse - Aufgabe: Trennung der einzelnen TCP-Verbindungen eines Systems voneinander. - Aufbau einer bestimmten Anwendung auf einem Hostsystem (bestimmte Dienste haben fest zugeordnete Portnummern zwischen 1 und 255, so genannte Well-Known-Ports (z.B. FTP = File-Transfer-Protokoll auf Port Nr. 21)). - möglich sind Portnummern 1 bis 65535. - bei mehreren parallelen Verbindungen gleicher Dienste zum gleichen Server wird eine eindeutige Kombination aus jeweils einer IP-Adresse und einer zufällig ausgewählten Portnummer gewählt, als Ergebnis erhält man eine Kombination aus jeweils einer IP-Adresse und einer Portnummer auf beiden Seiten einer Verbindung. - ein Server im Listen (= hört einen bestimmten Port ab), beim Verbindungsaufbau kommt eine Clientanfrage mit der zufälligen Ursprungsportadresse und mit dem Port der Anwendung als Ziel; der Server wählt zufällig einen freien Port aus seinem Vorrat und startet einen Kindprozess, der die Verbindung mit diesem Port herstellt; danach wartet der Anwendungsserver wieder am Port der Anwendung auf die nächste Anfrage.( Fazit: Zu einem bestimmten Zeitpunkt wird nur eine Clientanfrage bedient, die Anzahl der Verbindungen zwischen einem Server und seinen Clients ist begrenzt.) 6.3.4. Network und Host - die IP-Adresse besteht aus Networkanteil (= Domain = bezeichnet logische oder organisatorische Rechnereinheit) und Hostanteil (jeder einzelne Rechner in der Organisationseinheit, der mit einer IP-Adresse ausgerüstet werden soll). - je kleiner der Network-Anteil, umso mehr Hosts können sich in einem Network befinden und umgekehrt. Netzklassen: Class A: Byte 1 Netz, Byte 2 bis 4 Host Class B: Byte 1 und 2 Netz, Byte 3 bis 4 Host Class C: Byte 1 bis 3 Netz, Byte 4 Host 6.3.5. Subnet-Mask - der Hostanteil kann weiter aufgeteilt werden; mithilfe der so genannten Subnet-Mask wird beim Subclassing festgelegt, was innerhalb des Host-Anteils als netzinterner Network-Anteil und was als netzinterner Host-Anteil gelten soll. - Subclassing dient der logischen bzw. physikalischen Trennung von Teilen eines Netzes z.B. bei der Notwendigkeit der Verwendung von Routern bei Überschreitung einer bestimmten Anzahl von Netzknoten. - Die Subnet-Mask, bestehend aus vier Bytes, muss auf allen Rechnern eines Netzwerks gleich eingestellt werden. - In Binärschreibweise bedeutet eine 1 einen Network-Anteil, eine 0 einen Host-Anteil. Sollen beispielsweise in einem Class-C-Netz 16 Subnetze, mit jeweils 16 Rechnern gebildet werden, so ist als Subnet-Mask die 255.255.255.240 zu wählen (entspricht in Binärschreibweise: 11111111.11111111.11111111.11110000). 6.3.6 Namen und IP-Adressen - Rechner können anstatt mit den Zahlen für die IP-Adressen auch mit Namen bezeichnet werden, wobei auch dabei eine Aufteilung in Hostanteil (Namensteil vor Punkt im Namen) und Networkanteil (Namensteil nach Punkt im Namen) erfolgt. - Hierbei sind Übersetzungsmöglichkeiten vom Namen auf die intern weiterverwendeten IPAdressen entweder in Form von Konfigurationsdateien oder Diensten (wie DNS) erforderlich. 6.3.6.1. Konfigurationsdateien - Nach TCP/IP-Einrichtung befinden sich die Dateien HOSTS, NETWORKS, SERVICES und PROTOCOL (reine ASCII-Dateien mit Leerzeile am Dateiende!) zur Dienstenutzung und Rechnerkonfiguration auf Rechnern. - die Datei HOSTS beschreibt die Zuordnung von Namensabgaben von Rechnern zu IP- Adressen. - Beispiel für Aufbau der HOSTS-Datei: (# ist Kommentarbeginn, hinter der IP-Adresse eines Rechners folgen dann ein oder mehrere Aliasnamen (durch Leerzeichen getrennt) mit denen ein Rechner ansprechbar ist. # # HOSTS unter Windows 2000 # 127.0.0.1 localhost 192.168.0.1 gateway 192.168.0.222 bsii.intra.net bsii www - bei Namensauflösung hat die Hosts-Tabelle auf dem lokalen Rechner bevorzugte Priorität. - Problematisch bei dem Verfahren der Konfigurationsdateien ist, dass auf allen Rechnern im Netzwerk entsprechende Dateien gepflegt werden müssen und für jeden über einen Namensalias zu nutzenden Rechner ein Hoststabelleneintrag notwendig ist. 6.3.6.2. DNS - = Domain-Name-Service, hierbei führt jeweils ein Rechner in einem Netzwerk (=Domäne) eine Datenbank mit den Namen sämtlicher Rechner im Netzwerk und deren IP-Adressen und setzt auf Anforderung einen der Namen in die entsprechende IP-Adresse um. - Vorteil gegenüber dem Konfigurationsdateienkonzept: Veränderungen innerhalb der Domäne müssen nur einmal in der Datenbank des DNS-Servers vorgenommen werden. - jedem Client muss ausschließlich die IP-Adresse des DNS-Servers bekannt sein. - Üblicherweise werden pro Netzwerk der Primary-DNS und der Secondary-DNS (als Backup-System) konfiguriert. 6.3.7 Namensregistrierung und Domänennamenbildung - Registrierung von Domänennamen erfolgt über die NIC (= Network-Information-Center, achtet auf Eindeutigkeit) - bei der Namensbildung steht der Top-Level-Domainname ganz rechts, jeweils durch Punkte getrennt folgen die Namen der untergeordneten Sub-Domänen, ganz links steht der Rechnername. 6.3.8 DHCP - = Dynamic-Host-Configuration-Protocol dient dazu, ( nachdem die Adresse des DNSServers auf jeder Station konfiguriert ist ), eine freie IP-Adresse aus einem IP-Adresspool auf Anforderung einem Host zuzuteilen.