|
NAT >
Eingehende Anrufe > Skype > Seite
1 |
2
|
4. Skype
Einen Sonderfall stellt Skype dar. Die bisherigen Ausführungen beziehen
sich auf SIP-basierte Internet-Telefonie.
Skype dagegen basiert gerade
nicht auf dem SIP-Standard. Vielmehr nutzt Skype proprietäre Protokolle.
a. Peer-to-Peer
Skype
basiert auf Peer-to-Peer-Technologie, d.h. ähnlich wie Filesharing-Netzwerke verbindet sich jeder einzelne
Client (also jedes einzelne Softphone) nicht mit einem zentralen
Server, sondern ohne weitere Konfiguration mit anderen Clients ("peers"), weswegen
mit Skype die Verbindungen sinnvollerweise auch verschlüsselt werden
(siehe zur Verschlüsselung unter
Sicherheit/Abhörsicherheit).
Das Skype-Netz ist die Summe aller Skype-Clients. Anders als
herkömmliche Telefonnetze wachsen Leistungsfähigkeit und
Ausfallsicherheit des Skype-Netzes mit der Anzahl der Nutzer, da jeder
neue Nutzer auch wieder seine eigenen Ressourcen einbringt
(Rechenleistung, Bandbreite etc.).
Skype hat vor allem deswegen von sich reden
gemacht, weil es mit Skype relativ häufig möglich ist, auch
zwischen Clients, die durch eine Firewall
bzw. ein NAT-System geschützt sind, VoIP-Verbindungen herzustellen,
was bei SIP-basiertem VoIP typischerweise problematisch ist (siehe oben).
Denn möchte Nutzer A (in Fachjargon: Alice) mit Nutzer B (im
Fachjargon: Bob) sprechen und sind beide (!) durch eine Firewall/NAT geschützt, sind in keiner Richtung eingehende Verbindungen
möglich. Ist dagegen nur Alice hinter einer Firewall, könnte in der Regel
zumindest Alice bei Bob anrufen (allerdings wird bei Alice möglicherweise der Ton
"geblockt", d.h. der Ton funktioniert nur in eine Richtung), aber nicht Bob
die Alice. b. Supernodes
Jeder Skype Client ist mit einem supernode verbunden, der letztlich als hub
fungiert. Jeder Skype-Client kann ein supernode sein. Supernodes sind also keine zentralen Server, sondern andere Skype-Nutzer.
Wenn ein Anruf getätigt wird, wird über die mit dem supernode
(C bzw. Charlie) dauerhaft bestehende
TCP-Verbindung über das Skype Proprietary Call Control
Protocol ein eingehender Anruf signalisiert.
Anschließend verbinden sich Alice und Bob mit dem supernode Charlie und
können über Charlie eine Gesprächsverbindung aufbauen.
Supernodes kann man sich als Vermittlungsrechner vorstellen, die (in der
Skype-Terminologie gesprochen) für die Global Index-Funktion
zuständig sind.
Um festzustellen, ob
der eigene Computer als supernode fungiert, kann man z.B. in der
Eingabeaufforderung netstat eingeben. Taucht dort über einen
längeren Zeitraum (!) eine große (!) Anzahl an Verbindungen (von "wildfremden IPs") auf dem in den Skype-Optionen unter "Connection" festgelegten Port
auf, ist dies wohl ein gewisses Indiz für einen supernode. Es
kann aber genauso sein, dass der eigene Computer "nur" zum relaying
verwendet wird. Es besteht jedenfalls kein zwingender Zusammenhang
zwischen einer großen Anzahl an Verbindungen und dem Status als supernode.
Denn um als
supernode zu fungieren (besser gesagt: fungieren zu dürfen!),
benötigt man eine (sehr) gute Internet-Anbindung (256 kbit/s oder mehr
im Upload), der Computer muss eingehende Verbindungen akzeptieren und Skype muss tage- bzw. wochenlang ohne Neustart
laufen. Zudem besteht anscheinend jedenfalls derzeit keinerlei Mangel an
supernodes, so dass "nur die besten" überhaupt eine Chance haben
dürften. Es gibt im Übrigen auch keine "Bewerbungsprozedur" im
eigentlichen Sinne, sondern supernodes werden automatisch
ausgewählt, d.h.
basierend auf entsprechenden Algorithmen. Ist ein
bestehender supernode also "überlastet", wird er Last an einen
der Clients abgeben, der mit dem supernode verbunden ist und die
oben genannten Voraussetzungen erfüllt. So kann (theoretisch) jeder
Skype-Nutzer zum supernode werden. Eine zentral gesteuerte
Lastverteilung findet also nicht statt.
weiter...
|