Vorlesung Multimediale Werkzeuge, Übertragungstechnik

Werbung
Vorlesung Multimediale Werkzeuge,
Übertragungstechnik
Thema: Digitale Übertragungstechnik in
Netzen.
Grundlagen der Kommunikation im Internet,
Grundlagen der www. Protokolle, Browser
Geschichte:
• http://en.wikipedia.org/wiki/Arpanet
• http://en.wikipedia.org/wiki/TCP/IP)
ARPANET (Advanced Research Projects Agency
Network)
• Erstes sog. Packet-switched (Paket
vermitteltes) Netzwerk
• Daten werden in "Pakete" aufgeteilt, und
erhalten u.a. eine Zieladresse im "Header"
Vorher: Circuit switching, also feste
Verbindungen (meist Telefonleitungen und
Modem)
Problem: Kommunikation zwischen mehreren
Computern ist schwierig.
Seite 1
• Erste Ideen, formuliert von J. E.R. Licklider
von BBN: August 1962, Paper über "Galactic
Network" Konzept
(BBN: Firma in Cambridge, Mass., Abkürzung
von Bolt, Beranek, Newman, die Gründer,
machten digitale Datenübertragung,
später auch Pioniere der Sprachcodierung)
Erste ARPANET links ab 1969:
• University of California, LA,
• Stanford Research Institute,
• UC Santa Barbara,
• University of Utah
Erste Email von Queen Elizabeth II:
26. März 1976
National Science Foundation (USA):
• Vernetzung von Super Computern und
Rechnern der Informatik Fakultäten (CSnet),
wurde mit dem ARPANET verbunden,
• ca. in 1984, in der Zeit Aufkommen des
Begriffes Internet.
Kennzeichnend für das Internet:
Die sog. "Internet Protocol Suite", enthält u.a.
TCP/IP
Seite 2
• Entstand aus Arbeiten von DARPA in den
frühen 70ern.
• 1973 Vinton Cerf, Entwickler des ARPANET
Network Control Programs, hat mit Kahn ein
offenes Protokoll entwickelt.
Wichtige Eigenschaft: Unterschiede zwischen
verschiedenen Netzwerken wurden hinter
diesem Protokoll "versteckt".
• Resultat war das TCP/IP Protokoll
• Dadurch wurde es mögliche die
verschiedenartigsten Netzwerke zu
verbinden.
• Kam 1975 zur Anwendung, erstmals
zwischen Stanford University und University
College London.
• 1983 wurde es generell im ARPANET
eingeführt.
Weiteres Datennetz mit Signifikanz für das
Internet: Das ALOHANet.
• Norman Abrahameson, war Professor an der
Stanford University und leidenschaftlicher
Surfer. Ging deswegen nach Hawaii, und
arbeitet dort an Funk-basierter digitaler
Kommunikation.
• Funk-basiert um die Datenkommunikation
zwischen den Inseln sicher zu stellen.
Seite 3
Kommunikation zwischen verschieden DatenStationen: Ursprünglich "Circuit Switched", wie
beim Telefon, also:
Dedizierte Verbindungen für jeden Teilnehmer.
Über Funk: Jeder hat seine eigene Frequenz.
Problem: Je mehr Teilnehmer, desto mehr
Bandbreite wird benötigt, desto teurer werden
Sender/Empfänger.
Problem auch: Verfügbarkeit von Frequenzen.
Genannt: Frequency-Division Multiple Access
(FDMA)
-Andere Möglichkeit, für günstigere
Sender/Empfänger:
• Jede Station kriegt ihren eigenen Time-Slot
(Time-Division Multiple Access, TDMA).
• Problem: Mögliche Datenrate sinkt mit der
Anzahl der Teilnehmer, selbst wenn sie
nicht senden.
Ansatz vom ALOHA Net:
• Ähnlich wie TDMA, aber nicht mit festen
Time-Slots, sondern flexibel.
Das erste ALOHAnet Protokoll:
Seite 4
• Wenn Daten vorhanden, sende Daten
• Wenn es Kollision mit anderen Daten
gab, wiederhole später (nach zufälligem
Zeitintervall).
Beachte:
• sehr simples Protokoll, funktioniert aber
tatsächlich.
• Wurde später (im Ethernet Protokoll)
ergänzt um CSMA/CD (Carrier Sense
Multiple Access/ Collision Detection)
• Grundlage für das Ethernet (LAN: Local Area
Network, lokale Vernetzung von Rechnern)
und WLAN
• Maximaler Durchsatz (statistische
Berechnungen): ca. 18-35% der maximal
möglichen Datenrate.
Dieses prinzipielle Problem besteht heute noch
z.B. im WLAN: Bei mehreren WLAN Stationen
erziehlbare Datenrate bei 802.11b ist etwa 2-4
Mb/s, obwohl das Maximum bei 11 Mb/s liegt.
Jahreszahlen:
• Arbeit an Alohanet startete 1970,
• 1972 wurde ALOHAnet mit dem ARPANET
auf dem Festland verbunden.
-> Frühe Vernetzung von Netzen
Seite 5
ALOHAnet zeigt auch einfache Begründung für
Aufteilung der Daten in (zeitlich) begrenzte
Pakete:
Dadurch wird es möglich, dass andere
Stationen nach Ende des Paketes Zugriff auf
das Übertragungsmedium bekommen.
(Andernfalls gäbe es u.U. sehr Lange
Wartezeiten).
OSI-Model
Bisher erwähnt:
• TCP/IP (Transfer Control Protocol/ Internet
Protocol)
• Ethernet
In welchem Verhältnis stehen sie zueinander?
OSI (Open Systems Interconnection) Reference
Model, Aufteilung in Layer:
• 7 Application Layer: Beispiele: FTP, HTTP,
POP3, Telnet
• 6 Presentation Layer, Syntax Layer
• 5 Session Layer
• 4 Transport Layer. Bsp.: TCP, UDP
• 3 Network Layer: IP (IPv4, IPv6)
• 2 Data Link Layer: Ethernet, WLAN
• 1 Physical Layer: 10 BASE-T, 1000 BASE-T
Seite 6
(Datenverbindung)
http://en.wikipedia.org/wiki/OSI_model
Funktion von TCP (Transport Layer, Layer 4):
• Teilt Datenstrom in Pakete auf, mit einer
vorbestimmten Maximalgröße,
• übergibt die Daten dem IP (Internet
Protocol),
• überprüft ob Pakete verloren gehen und
dass die Reihenfolge stimmt, durch Vergabe
einer Sequenz-Nummer,
• prüft ob Daten ok sind durch Übertragung
einer Check-Summe.
• TCP auf Empfänger-Seite gibt Bestätigung
(Acknowledgement) wenn Paket erfolgreich
empfangen wurde.
• TCP wiederholt Paket, wenn Ack. nicht
innerhalb einer Time-out Zeit empfangen
wurde.
Alternativen zu TCP:
• UDP (User Datagram Protocol) für
Anwendungen wie Streaming Audio und
Video. Überlässt der Anwendung viele der
Funktionen von TCP.
• ATM ( Asynchronous Transfer Mode) Timing
basiertes Protokoll, geeignet für schnelle
Übertragung von real-time Daten (TelefonSeite 7
Verkehr...)
Transport Layer (Layer 4)
Network Layer (Layer 3):
IP (Internet Protokoll) Adressen
Funktion:
Adressierung von Datenstationen/Computern.
(http://www.netplanet.org/adressierung)
Am weitesten verbereitet:
• IPv4, nutzt 32 bit Adressen (ca. 4 Milliarden
Adressen)
• IPv6, (next. gen. Internet), hat 128 bit
Adressen
Erweiterung der Adressfelder nötig wegen
exponentieller Zunahme
der Datengeräte im Internet.
Versionen 0-3: nicht benutzt oder reserviert
5: experimentell.
– Adressierung eines Datengerätes in IPv4
mit 32 bit, also 4 bytes oder octets,
=> Anzahl möglicher Adressen: 2^321=4.294.967.296
– Darstellung als 4 byte mit punktiertSeite 8
dezimaler Schreibweise.
– Beispiel:
Host id
Netzwerk identification (id)
Anzahl der bits für Netzwerk Identifikation ist
variabel
(Aus
http://www.netplanet.org/adressierung/ip.shtm)
Beispiel:
• TU-Ilmenau Netz: 141.24.xxx
• Massachusetts Institute of Technology (MIT)
Netz: 18.xxx
Beispiele:
Anzeigen der eigenen IP Adresse:
www.whatismyip.com
Seite 9
Dort gibt es auch weitergehende Informationen
und Befehle fuer verschiedene
Betriebssysteme.
-Anzeige von Informationen über eine IP
Adresse:
In Linux/Unix: whois ipadresse
(unter Windows nur als Download erhaeltlich,
nicht Teil des Betriebssystems!)
-Anzeige der Route der Datenpakete mit
Zeiten:
Unter Linux:
mtr (“my trace route”), z.B.
mtr www.inf.hs-anhalt.de
mtr www.mit.edu
Seite 10
Vergabe von IP Adressen:
• Globale und oberste Instanz: IANA (Internet
Assigned Numbers Authority)
• IANA delegiert IP Adressen zu Regional
Internet Registries (RIRs):
➢ American Registry for Internet Numbers
(ARIN) [1] für Nord-Amerika
➢ Réseaux IP Européens Network Coordination
Centre (RIPE NCC) [2] für Europa, den
Mittleren Osten und Zentral-Asien
➢ Asia-Pacific Network Information Centre
(APNIC) [3] für Asien und die Pazifische
Region
➢ Latin American and Caribbean Internet
Address Registry (LACNIC) [4] für Latein
Amerika und die Karibik
➢ African Network Information Centre (AfriNIC)
[5] für Afrika
(aus:http://en.wikipedia.org/wiki/Internet_Assig
ned_Numbers_Authority)
Seite 11
Domain Name System (DNS)
Bisher:
Datengerät wird durch Zahlen bezeichnet (IP
Adresse).
Problem:
Schlecht für Menschen zu merken, IP Adressen
können sich täglich ändern, wie bei den
meisten DSL Anschlüssen!
Lösung:
Das Domain Name System, Verwendung von
Domain Namen, also leichter zu merkende
Namen für Datenendgeräte und Netze.
Das Domain Name System (DNS):
• Speichert Informationen verbunden mit
Domain Namen (mit whois)
• Übersetzt Domain Namen nach IP Adressen
(mit host).
Früher:
Datei HOSTS.TXT (oder hosts unter Linux/Unix)
im lokalen Rechner.
Problem:
Bei Änderungen müssen die Dateien in allen
Rechnern geändert werden. (Ist immer noch als
Seite 12
Ergänzung in Computersystemen. In Linux oder
Unix unter /etc, in Windows unter
\WINDOWS\system32\drivers\etc\)
Jetzt, neuer Ansatz:
Basiert auf Servern an zentralen Stellen im
Internet (1983 erfunden von Paul Mockapetris)
(http://en.wikipedia.org/wiki/Domain_name_syst
em)
Beispiel:
Anzeige der IP Adresse eines Domain Name:
In Linux/Unix:
Befehl (im Terminal Fenster): host
Windows:
Befehl dnslookup
Beispiel:
Finde die IP Adresse der folgenden Web Server:
host www.tu-ilmenau.de
host www.mit.edu
Der Domain Name Space:
Seite 13
Aus: Wikipedia, Domain Name System.
Seite 14
Das World Wide Web, Multimedia im Internet
Vorläufer:
"Gopher, 1991, Univ. of Minnesota, für remote
Terminals (VT 100). Eingabetastatur, nicht
Maus.
Problem:
Kein so einfaches User Interface
Pionier: Tim Berners-Lee, Physiker am
Kernforschungszentrum CERN
(Schweiz),
Ziel:
Vernetzung von Informationen, Unterlagen,
Papers, Dokumente.
• Anfangs begrenzte Unterstuetzung,
• Erstellte Prototyp mit Hilfe von Studenten,
• Erster Prototyp 1990 auf einem NeXT
Computer, mit Unix Betriebssytem.
• Er entwickelte HTML (Hypertext Markup
Language), HTTP, Libs für BrowserEntwicklung, ...
• Gründete das World Wide Web Consortium
(W3C) am Massachusetts Institute of
Technology Laboratory for Computer
Science (MIT/LCS), mit Beteiligung vom
französischen Institut national de recherche
Seite 15
en informatique et en automatique (INRIA).
(http://www.netplanet.org/geschichte/worldwid
eweb.shtml)
Browser
Durch die Definition von HTML und Herausgabe
von Libraries zur Browser- Entwicklung
entstanden eine Reihe von Browsern:
• Mosaic: 1993 am National Center for
Supercomputing Applications (NCSA) der
Universität Illinois in den USA,
• Netscape Navigator (1994): von Netscape,
Gründung Marc Andreesen von Mosaic und
Jim Clark von Silicon Graphics, in Mountain
View/Kalifornien. Netscape brachte auch
Erweiterungen des HTML Protokols. Starkes
Wachstum von Netscape.
• Internet Explorer (1995, Microsoft), auch
wegen Erfolg von Netscape
• Mozilla: 1998: Freigabe des Codes von
Netscape, darauf Gründung der Mozilla
Foundation
• Firefox, 2004, von Mozilla Foundation
• Opera, seit ca. 1995. Auch für spezielle
Anwendungen z.B. wie für Handys
(http://www.netplanet.org/www/browser.shtml,
wikipedia)
Seite 16
HTTP (Hypertext Transfer Protocol):
• HTTP ist ein request/response Protokol
zwischen Clients und Servern.
• Ein HTTP Client initiert eine Anfrage durch
das Herstellen einer Verbindung über
Transfer Control Protocol (TCP) zu einem
bestimmten Port des Remote Host (Port 80
ist default).
• HTTP benennt benötigte Resourcen mittels
des Uniform Resource Identifiers (URIs)
(bzw. URLs, Uniform Resource Locator)
mittels http: oder https: URI Festlegungen.
• HTTP hat sich in mehrere, meist
rückwärtskompatible Versionen entwickelt.
• HTTP/1.1 ist die aktuelle Version;
(http://en.wikipedia.org/wiki/HTTP)
• HTML - Hypertext Markup Language.
Originally designed based on SGML
• HyperText Markup Language (HTML) is a
predominant markup language for the
creation of web pages. Standardized by
W3C (WWW Consortium)
Newer develpoments:
• XHTML (Extensible HyperText Markup
Language) is a markup language that has
the same expressive possibilities as HTML,
but a stricter syntax.
Seite 17
• XML (Extensible Markup Language) is a
W3C-recommended general- purpose
markup language for creating specialpurpose markup languages, capable of
describing many different kinds of data.
Derived from SGML. Simplified subset of
Standard Generalized Markup
Language (SGML).
Primary purpose:
facilitate the sharing of data across different
systems.
(http://www.netplanet.org/www/ml.shtml)
• SGML (Standard Generalized Markup
Language):
• SGML is a descendant of IBM's Generalized
Markup Language (GML), developed in the
1960s by Charles Goldfarb, Edward Mosher
and Raymond Lorie (whose surname initials
also happen to be GML).
• SGML was originally designed to enable the
sharing of machine-readable documents in
large projects in government, legal and the
aerospace industry, which have to remain
readable for several decades - a very long
time in information technology.
• SGML basiert auf ASCII Textformat.
Seite 18
ASCII:
• früh Standardisiert, für
Programmiersprachen verwendet.
• Langzeit-stabil!
SGML is an ISO standard:
• "ISO 8879:1986 Information processing Text and office systems - Standard
Generalized Markup Language (SGML)".
• Primarily intended for text and database
publishing, one of its first major applications
was the second edition of the Oxford
English Dictionary, which was and is wholly
marked up in SGML.
(http://en.wikipedia.org/wiki/SGML)
• Verwandtschaft zu LaTeX,
Textverarbeitungssystem für
wissenschaftliche Dokumente.
• Erhältlich für Linux, Unix (Teil des
Betriebssystems), Windows
• Z.B. praktisch als LaTex tool: Texmaker
Beispiel:
\begin{document}
Dies ist text
\[Formel =\frac{a}{b}\]
\end (document}
Seite 19
Dies ist text
Formel =
a
b
SGML syntax example:
<QUOTE TYPE="example">
typically something like
<ITALICS>this</ITALICS>
</QUOTE>
Empfehlung:
wissenschaftliche Arbeiten in Latex schreiben
( Medienprojekt, Studienarbeit,
Diplomarbeit, Master-Arbeit...).
=> Mehr Stabilität, ist auch in Jahren noch
zu Lesen.
Seite 20
Herunterladen