F Fußnoten i Inhaltsverzeichnis < Kapitel 6 > Kapitel 8 L Literaturverzeichnis M Materialien © Copyright

^ 7 Exemplarische Unterrichtsreihen für den Informatikunterricht
Teilabschnitte dieses Abschnitts
v 7.3.1 Gehört das Thema "Grundlagen der Protokollsprachen des Internet" in den Informatikunterricht?
v 7.3.2 Didaktischer Ort der Unterrichtsreihe
v 7.3.3 Lernziele der Unterrichtsreihe
v 7.3.4 Didaktisch-methodischer Kommentar
v 7.3.5 Unterrichtsablauf

7.3 Grundlagen der Protokollsprachen des Internet

7.3.1 Gehört das Thema "Grundlagen der Protokollsprachen des Internet" in den Informatikunterricht?

Die Bedienung der Applikationen, die im Zusammenhang mit dem Internet zur Verfügung stehen, führt nicht automatisch zu einem Verständnis, wie die Rechnerkommunikation im Internet funktioniert. Der Informatikunterricht soll aber über das bloße Anwenden von Informationssystemen zu einem Verständnis der Grundstrukturen von informationsverarbeitenden Systemen befähigen. Der Lernbereich III der Richtlinien Informatik für die Sekundarstufe II in Nordrhein-Westfalen102 sieht die Vermittlung von solchen Grundkenntnissen vor.
Damit Menschen miteinander kommunizieren können, müssen sie über eine gemeinsame Sprache verfügen, sei es über eine natürliche Sprache wie Deutsch oder Englisch, oder über eine Gestik und Mimik enthaltende Körpersprache, deren Zeichen und Wörter bzw. Symbole von den Kommunikationspartnern auf die gleiche Weise gedeutet werden. Nur so ist gesichert, daß ein Kommunikationsinhalt auch so verstanden wird, wie er gemeint wird.
Damit Rechner - genauer: Rechneranwendungen - miteinander kommunizieren können, benötigen sie ebenfalls eine Sprache, deren Syntax und Semantik den an der Kommunikation beteiligten Anwendungen bekannt ist. Durch Rechnernetze sind vielfach auch Rechner mit unterschiedlichen Betriebssystemen und unterschiedlicher Architektur verbunden, und gerade deswegen benötigt ein systemübergreifendes Netz allgemein anerkannte Sprachstandards. Diese Grundlage jeder Rechnerkommunikation bilden Protokollsprachen.

Unter anderem enthält der Lernbereich III der Richtlinien die Aufforderung, die "Abhängigkeit der Möglichkeiten und Grenzen des Rechnereinsatzes von der technischen Struktur des benutzten Systems"103 zu thematisieren. Eine wesentliche Einschränkung der Nutzbarkeit von Einzelplatzrechnern besteht darin, daß zu ihrer Steuerung oder für den Zugriff auf gespeicherte Daten immer eine physische Präsenz eines Benutzers an der Rechnerkonsole erforderlich ist. Vielfach ist es jedoch notwendig, daß die Daten auch an anderen Orten verfügbar sind. Zum Beispiel kann und will nicht jeder Kunde, der den Kontostand seines Girokontos erfahren will, sich dazu zum Zentralrechner seiner Bank begeben. Durch die physikalische Verbindung von Rechnern über Leitungen sollen diese Grenzen des Rechnereinsatzes überwunden werden, so daß die Übertragung von Daten zu beliebigen Orten und die Steuerung von Rechnern mittels anderer Rechner möglich wird.
Durch die Kenntnis der dabei auftretenden Probleme sowie von Verfahren zu ihrer Bewältigung wird eine Grundlage zu einer fundierten Beurteilung der Möglichkeiten und Grenzen des Einsatzes von Rechnernetzen geschaffen, wie sie durch die alleinige Bedienung von Anwendungen kaum möglich ist.

Durch international genormte Protokollsprachen, die auf nahezu jedes Rechnersystem portiert werden können, wird es erst möglich, daß völlig unterschiedliche Rechnerwelten vernetzt werden und Daten unterschiedlicher Formate stets adäquat dargestellt werden können.

Diese Protokollsprachen stellen spezielle Sprachen dar. Sprache ist eine Masteridee der Informatik104. Programmiersprachen sind zum Beispiel Fundament jeder Programmierung sowie der Praktischen Informatik und formale Sprachen bilden eine Grundlage der Theoretischen Informatik. Protokollsprachen stellen das Bindeglied zwischen Anwendungen, dem Betriebssystem und der Hardware bei jeder Rechnerkommunikation dar.

Durch die Entwicklung einfacher eigener Protokollsprachen erkennen Schülerinnen und Schüler grundlegende Aufgaben und Schwierigkeiten der Rechnerkommunikation und werden in die Lage versetzt, Verfahren der Rechnerkommunikation unterscheiden und bewerten zu können. Außer den elementaren Bestandteilen jedes Kommunikationsvorganges sind für die Rechnerkommunikation Fehlererkennung und -behebung, eine Strategie zur effizienten Nutzung der Ressourcen und eine geeignete Beschreibung der verschiedenen Aufgabenbereiche von Protokollen von essentieller Bedeutung.
Die wohl wichtigsten der im Internet verwendeten Protokollsprachen - das Internet Protocol (IP) und das Transmission Control Protocol (TCP) - gehören zu den Grundlagen, die das Verständnis der Kommunikationsvorgänge speziell im Internet fördern. Allerdings werden diese Protokolle nicht als technisches Wissen im Detail erarbeitet, sondern sie werden als praktische Beispiele für die Umsetzung der zuvor erarbeiteten grundlegenden Aufgaben und Verfahrensideen von Protokollen angeführt. Durch die Programmierung einer kleinen Anwendung lernen die Schülerinnen und Schüler, wie einfach eine Rechnerkommunikation auf der Grundlage von Protokollsprachen wird.
Auf Basis dieser Erfahrungen und Kenntnisse wird den Schülerinnen und Schülern ermöglicht, eigene Bewertungen der Möglichkeiten und Grenzen des Einsatzes von vernetzten Systemen zu erstellen und nicht zuletzt die mit diesen Systemen verbundenen Gefahren zum Beispiel hinsichtlich der Bereitstellung oder Übermittlung personenbezogener oder aus anderen Gründen schützenswerter Daten einzuschätzen.ˆ

7.3.2 Didaktischer Ort der Unterrichtsreihe

Die Behandlung der Thematik in der vorgeschlagenen Form setzt voraus, daß die Schülerinnen und Schüler mit der Programmierung in einer Programmiersprache vertraut sind und darin eine gewisse Sicherheit erlangt haben. Sie sollten einige Anwendungen, die das Internet nutzen, kennengelernt sowie eine allgemeine Einführung in das Internet bekommen haben.
Sie sollten außerdem über Erfahrungen in der Bedienung des Betriebssystems Windows sowie eines PASCAL-Compilers unter Windows verfügen. Die Festlegung auf PASCAL und Windows geschieht allerdings nicht aus didaktischen Gründen, sondern aus pragmatischen: die vorliegende Prozedurensammlung zur Netzwerksimulation liegt als unter Windows lauffähige PASCAL-Unit vor. Sie läßt sich aber selbstverständlich auch an andere Programmiersprachen und Betriebssysteme anpassen.
Da der Umgang mit Protokollen einfache Datenmanipulationen wie die beliebige Interpretation von Daten als Zeichen oder Zahlen, als Bits, Bytes, Wörter oder Langwörter erfordert, sollten die Schülerinnen und Schülern mit Zahldarstellungen und der Kodierung von Zeichen vertraut sein.

Daraus ergibt sich, daß ein günstiger Zeitpunkt für die Behandlung des vorgestellten Themas in der 12. Jahrgangsstufe nach einem Kurs zu Aufbau und Funktionsweise eines Rechners ist. Wie auch in diesem Kurs stammen die Anwendungsbeispiele für Protokollsprachen nicht direkt der Lebenswelt der Schülerinnen und Schüler, wie es zum Beispiel bei Sortierproblemen oder Datenbanken der Fall ist, sondern vor allem aus innerinformatischen Bereichen.

Ich halte es für besonders sinnvoll, diese Unterrichtsreihe zur Vorbereitung einer Projektphase in der Jahrgangsstufe 13 anzubieten. In dem Projekt bestünde dann die Möglichkeit, verteilte Internet-Anwendungen aus dem Bereich der Simulation oder Client-Server-Anwendungen zum Beispiel aus dem Bereich der Datenbanken zu erstellen.ˆ

7.3.3 Lernziele der Unterrichtsreihe

Folgende Groblernziele werden mit der vorgestellten Unterrichtsreihe verfolgt:
Die Schülerinnen und Schüler sollen

ˆ

7.3.4 Didaktisch-methodischer Kommentar

Protokolle haben definitorischen Charakter, obwohl die Beschreibung der im Internet gebräuchlichen Protokolle in sogenannten "Request for comments" (RFC) geschieht. Im Sinne der zuvor angeführten Lernziele ist nicht die Vermittlung der Definitionen von Protokollsprachen primäres Ziel des Unterrichts.
Vielmehr geht es darum, den Schülerinnen und Schülern Einsicht in die Notwendigkeit der Existenz von Protokollsprachen und ihre grundlegenden Aufgaben zu vermitteln.
Dazu muß man sich folgende Fragen stellen:

"Wie kann die Eigenaktivität der Schüler bei diesem Thema im Informatikunterricht initiiert werden?
In welcher Weise wird das Kriterium der Ergebnisorientierung unterstützt?
Wo liegen die konstruktiven Aspekte dieses Themas und ein die Schüler motivierender informatischer Gehalt?"
107
Der informatische Gehalt wurde bereits beschrieben. Eine intrinsische Motivation der Schülerinnen und Schüler wird ermöglicht aus einer inhaltlichen Spannung: bisher haben sie das Internet schon genutzt, ohne genaueres über die internen Abkäufe zu wissen. In dieser Unterrichtsreihe erfahren sie nun mehr über die Grundlagen, so daß sie sich schließlich in die Lage versetzt sehen, nicht nur wirklich verstanden zu haben, was bei der Datenübermittlung geschieht, sondern auch selbst Applikationen zu erstellen.

Dadurch, daß die Schülerinnen und Schüler selbst einfache Protokollsprachen definieren und implementieren, finden fundamentale Ideen aus den Bereichen aller drei Masterideen - Algorithmisierung, strukturierte Zerlegung und Sprache - Eingang in den Unterricht.
Die Schülerinnen und Schüler erstellen Produkte, mit denen bereits eine Rechnerkommunikation im lokalen Rechnernetz möglich ist. Die Internet-Protokolle IP und TCP erfahren sie als logische Fortsetzung der eigenen Bemühungen, und schließlich programmieren sie selbst eine eigene Internet-Applikation, die auf TCP aufsetzt.
Im Sinne einer didaktischen Reduktion ist es selbstverständlich nicht sinnvoll, das Thema erschöpfend zu behandeln. So werden IP und TCP nicht im Detail erarbeitet, und nicht jede Aufgabe, die diese Protokolle erfüllen, wird so genau beschrieben, wie es für eine Implementation durch die Schülerinnen und Schüler notwendig wäre.

Bei der Behandlung der Rechnerkommunikation bietet es sich an, Vergleiche mit der herkömmlichen Kommunikation zwischen Menschen anzustellen. Manche Prinzipien lassen sich so leicht vermitteln, und machen sich die Schülerinnen und Schüler bewußt, welche Verfahren in der zwischenmenschlichen Kommunikation verwendet werden.
So lassen sich zwischen dem Versand von Nachrichten im Computernetzwerk Analogien zur Brief- oder Paketpost finden. Analogien zu bilden mit der Kommunikation per Telefon kann an einzelnen Stellen sinnvoll sein, birgt jedoch die Gefahr, daß die Vorstellung des "Verbindungsaufbaus" übernommen wird - eine "Verbindung" bedeutet im Internet keine physikalisch reservierte Leitung, die vom Verbindungsaufbau bis zum Verbindungsabbau nur den Kommunikationspartnern zur Verfügung steht, sondern eher eine logische Vereinbarung zwischen den Kommunikationspartnern.

Die im Internet gebräuchlichen Protokolle direkt an den Anfang einer Unterrichtsreihe zu setzen, halte ich nicht für sinnvoll. Zunächst sollten die Schülerinnen und Schüler statt dessen die grundlegenden Aufgaben von Protokollen erkennen. Die Vermittlung der Protokolle IP und TCP selbst läßt keine große Eigenaktivität der Schülerinnen und Schüler zu, weil diese Protokolle zu komplex sind, als daß sie im Unterricht zum Beispiel implementiert werden könnten. Es erscheint sinnvoller, Prinzipien an einfachen Protokollsprachen zu erkennen und die Internet-Protokolle als Weiterentwicklung der eigenen Ideen zu begreifen.

Die weiter unten beschriebene Unit Protokoll108 ermöglicht die Simulation einer primitiven Netzwerkkarte, die Daten über eine Leitung senden kann und alle gesendeten Daten liest (auch die eigenen). Ist ein lokales Netz in der Schule vorhanden, findet eine reale Kommunikation zwischen den beteiligten Rechnern statt109. Vorteil gegenüber der üblichen Rechnerkommunikation ist allerdings, daß durch die Pufferung ein asynchrones Lesen und Schreiben ermöglicht wird. Für eine Kommunikation müssen die Anwendungen nicht absolut gleichzeitig ablaufen, sondern können auch nacheinander (und ggf. auch auf nur einem Rechner) gestartet werden. Dieser Unterschied zu realen Anwendungen sollte der Lerngruppe natürlich verdeutlicht werden!

Die Beispielunits ProtP2 und ProtP3110 stellen Lösungsvorschläge für die Aufgabe 4 bzw. für die Aufgaben 8 und 9 in der Ablaufsbeschreibung dar. Entwickeln die Schülerinnen und Schüler Protokollsprachen mit einer anderen Syntax, so sind diese als Grundlage weiterer Betrachtungen zu verwenden.
Es ist beispielsweise bei der Lösung der Aufgabe 2 denkbar, daß die Schülerinnen und Schüler die Länge einer Nachricht im Klartext kodieren werden oder anstelle der Länge ein spezielles Endezeichen übermitteln. Ungünstige Wege werden vermutlich von der Lerngruppe selbst erkannt. Durch die Aufgabenstellung, redundante Informationen weitestgehend zu reduzieren, können Hilfen zur Vereinfachung der Protokollsprachen gegeben werden.
Die Schülerinnen und Schüler sollten geeignete Darstellungsformen für die Syntax ihrer Protokollsprachen entwickeln. Neben der Darstellung im Blockdiagramm bietet sich auch die Darstellung durch einen Graphen an, im Falle regulärer Protokollsprachen (im Beispiel nur P1) durch den Graphen eines endlichen Automaten111.

Den Exkurs zu den Hamming-Codes112 sehe ich als fakultativen Inhalt an, der sich anbietet, wenn die Lerngruppe bereits Erfahrungen mit Operationen auf der Ebene der Bitmanipulationen (logisches UND und ODER sowie Schiebeoperationen) hat. Für die Einbeziehung des Exkurses spricht, daß die Verwendung von Hamming-Codes nicht nur eine Fehlererkennung, sondern auch eine automatische Fehlerbehebung ermöglicht. Allerdings finden Hamming-Codes im Rahmen der Internet-Protokolle keine Verwendung, sie dienen vielmehr als "Standardcode[s] zur Fehlerkorrektur in größeren Halbleiterspeichern"113. Inwieweit ich diesen Exkurs behandeln würde, hängt von der Lerngruppe ab. In einem der seltenen Leistungskurse halte ich das Thema für eine sinnvolle Ergänzung, in einem Grundkurs bin ich hinsichtlich der wenigen Unterrichtsstunden, die pro Woche zur Verfügung stehen, eher skeptisch.

Eine paketorientierte Übermittlung von Nachrichten ist von den Schülerinnen und Schülern schon von Anfang an angewendet worden - die Prozeduren Sende und Empfange der Unit Protokoll lassen nur Strings als Nachrichten zu. Wer Nachrichten verschicken wollte, die länger als 255 Zeichen (gegebenenfalls abzüglich des Overheads für den Protokollkopf) waren, mußte diese aufteilen. Allerdings wurde diese Beschränkung noch nicht diskutiert - es wäre ja zunächst auch denkbar, die gleichen Routinen für Bytefelder zu schreiben. Und tatsächlich basieren die Routinen innerhalb der Unit auf anderen, die Blöcke der Größe 216-1 Bytes verarbeiten könnten. Die Nachteile einer solchen Übermittlung ohne Zerlegung dürften von Schülerinnen und Schülern schnell erkannt werden. Als ich im Rahmen einer kurzen Internet-Einführung Schüler der Jahrgangsstufe 13 danach fragte, wurden diese tatsächlich genannt.
Die Unterrichtseinheit zur Fragmentierung und paketorientierten Übermittlung dient in besonderer Weise zur Vorbereitung der Anordnung der Protokolle in einzelnen Schichten. Zwar haben die Schülerinnen und Schüler auch vorher schon die Prozeduren der Unit Protokoll (und damit eines Protokolls P0) verwendet, ohne daß es ihnen bewußt wurde. Durch die eigene Entwicklung eines Protokolls P3, das die Routinen des Protokolls P2 verwendet, wird die strukturelle Verknüpfung der Protokolle deutlich. Verschiedene Aufgaben werden von Protokollen in verschiedenen Schichten übernommen.

Das OSI-Basisreferenzmodell dürfte auf dieser Grundlage keine besonderen Schwierigkeiten mehr bieten. Als besonders günstig erweist es sich nun, daß die einzelnen bisher verwendeten Protokolle schon einzelne Aufgaben der verschiedenen Schichten abdecken. Das OSI-Modell ist die grundlegende Strukturierungshilfe auf dem Gebiet der Protokollsprachen, auch wenn sich viele Protokolle nicht eindeutig den einzelnen Schichten zuordnen lassen. In diesem Modell finden sich in besondere Weise die Prinzipien der Hierarchisierung und der Modularisierung wieder. Die Behandlung der Protokolle IP und TCP zeigt den Schülerinnen und Schüler, daß die selbst erstellten Protokolle durchaus verwandt mit den im Internet gebräuchlichen Protokollen sind.

Die letzte Unterrichtseinheit läßt die Schülerinnen und Schüler erkennen, daß das Internet auf der Grundlage von geeigneten Protokollsprachen zu einem universellen Medium zur Übermittlung von binär kodierbaren Daten wird. Zunächst wird durch die Erstellung einer eigenen Anwendung, die auf dem Protokoll für den Finger-Dienst basiert, die Verwendung der Protokolle der niedrigeren Schichten geübt. Es wird deutlich, wie durch die Hierarchisierung und Modularisierung der einzelnen Vorgänge eine Portierbarkeit der Anwendungen ermöglicht wird. Zugleich lernen sie die Mechanismen kennen, mit denen sie auch Internet-Anwendungen auf neu definierten Protokollen erstellen könnten.
Um die zur Verfügung stehende Socket-Schnittstelle114 einfacher verwenden zu können, habe ich eine Unit Sockets115 bereitgestellt, in der Prozeduren und Funktionen mit verständlichen Namen zur Verfügung stehen, die einen Verbindungsaufbau sowie das Senden und Empfangen von Nachrichten über das Internet vereinfachen. Sie zu verwenden ist nicht notwendig, wenn die Schülerinnen und Schüler sehr routiniert in der Programmierung sind. In diesem Fall kann der direkte Zugang zur Socket-Schnittstelle verwendet werden.

Durch eine abschließende kritische Beurteilung der Datensicherheit auf dem Internet können Mißbrauchsmöglichkeiten daraus resultierende gesellschaftliche Folgen diskutiert werden.ˆ

Beschreibung des Unterrichtsablaufs

Fußnoten:
102 Vgl. [RLOI81], S. 29
103 Ebd.
104 Vgl. [SCHW91], S. 50.
105 Dieses Lernziel ist fakultativ (vgl. S. 62).
106 Das Open System Interconnect-Basisreferenzmodell gibt eine strukturierte Beschreibung der Aufgaben von Protokollsprachen.
107 [FRIE95], S. 34.
108 Die Unit ist in der Datei "protokoll.pas" in der Anlage enthalten.
109 In der Datei "protokoll.pas" muß dazu nur ein Dateiname in einem von allen Stationen erreichbaren Pfad angegeben werden. Genaueres findet sich in der angegebenen Datei.
110 Diese Units befinden sich in den Dateien "protp2.pas" und "protp3.pas".
111 Zur Trennung der Schwierigkeiten sollte ein endlicher Automat nur dann erwähnt werden, wenn er schon aus einer Unterrichtsreihe zur Theoretischen Informatik bekannt ist.
112 Hamming-Codes ermöglichen unter bestimmten Voraussetzungen eine automatische Korrektur fehlerhaft übertragener Zeichen. Benannt nach Richard Wesley Hamming, geb. 11.02.1915.
113 [MAEH92], Kapitel 2, S. 34.
114 Socket bedeutet soviel wie Sockel. Die Socket-Schnittstelle stellt Prozeduren und Funktionen zur Handhabung der Protokolle IP und TCP sowie weiterer Protokolle zur Verfügung. Sie ist unter Windows durch eine dynamische Bibliothek Winsock.dll realisert.
115 Die Unit Sockets befindet sich in der Datei "sockets.pas". Sie ist ausführlich kommentiert, eine Übersicht der Prozeduren, Funktionen und Typen findet sich auf Seite 106.


ˆ Seitenanfang i Inhaltsverzeichnis < Kapitel 6 > Kapitel 8 L Literaturverzeichnis M Materialien © Copyright