Skype pro & contra
Ein Beitrag zur Diskussion über kostenloses Telefonieren im Internet
Andreas Klauda
Was ist Skype?
Skype - eine Software zum Telefonieren vom PC aus - ähnelt auf den ersten
Blick sehr einem gewöhnlichen Instant Messenger wie etwa ICQ oder dem MSN-Messenger.
Dieser Eindruck täuscht allerdings, da hierbei die grundlegende Funktionsweise,
die Skype von allen anderen dieser Programme deutlich abhebt, missachtet
wird:
Skype basiert auf Peer-to-Peer-Technologie, d. h. ähnlich wie Filesharing-Netzwerke
verbindet sich jeder einzelne Client (also jedes einzelne Softphone) nur
zu Authentifizierungszwecken mit einem zentralen Server, alle anderen Verbindungen
werden mit anderen Clients ("Peers") direkt eingegangen, weswegen mit Skype
diese sinnvollerweise auch verschlüsselt werden. 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.), darum funktioniert es auch perfekt hinter
Firewalls und NAT-Routern. Diese Eigenheit bringt nicht nur Vorteile sondern
auch "Gefahren" mit sich (mehr dazu im Abschnitt "Richtiger Umgang mit
Skype" und "Technische Details").
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
1 VoIP oftmals problematisch ist. 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 bei Alice.
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.

Skype Client
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.
Mit Skype ist es möglich, mittels der Technik Voice over IP mit dem Gegenüber
zu telefonieren. Dieses Telefonieren ist kostenlos, sofern es zwischen
zwei Skype- Nutzern geführt wird.
Allerdings gibt es auch die Möglichkeit, von Skype auf ein gewöhnliches
Telefon (Handy oder Festnetz) anzurufen.
Das Zauberwort hierfür lautet SkypeOut. Man kauft sich, wie bei einem Prepaid-Handy,
ein bestimmtes Kontingent von der Skype Homepage, und kann nun den Computer
als gewöhnliches Telefon nutzen.
Das Gleiche funktioniert auch umgekehrt. Bei SkypeIn erhält man eine in
einem bestimmten Land lokalisierte Festnetz-Nummer, welche von einem beliebigen
Telefon aus angerufen werden kann, der Anruf erscheint dann im Skype-Fenster.
Eine weitere Funktion des Programms ist es, Anrufe in Abwesenheit wie bei
einem gewöhnlichen Telefon mittels Anrufbeantworter annehmen zu lassen.
SkypeIn sowie die Anrufbeantworter-Funktion sind allerdings kostenpflichtig.
(Es wird eine monatliche Grundgebühr eingehoben. Pro Gespräch fallen weitere
Kosten an.)
Neben diesen Funktionen ist es mit Skype auch möglich, Audiokonferenzen
zu führen, maximal 10 Personen können daran teilnehmen.
Entwickelt wurde Skype von den KaZaa-Entwicklern Niklas Zennström und Janus
Friis, das ist wahrscheinlich auch der Grund für die Peer-to-Peer Technologie.
Was ist SkypeOut?
Mit der Basis-Version von Skype ist es nur möglich, mit anderen Skypern
zu chatten oder sie anzurufen. Beides ist, abgesehen von den Strom- und
Internet-Kosten, vollkommen gratis. Eine sinnvolle Erweiterung des Prinzips
ist hier nun SkypeOut.
SkypeOut ermöglicht Anrufe ins Festnetz sowie ins Mobilfunknetz, weltweit.
Ausgenommen sind lediglich Service-Rufnummern, natürlich insbesondere solche,
die sonst die Telefonrechnung zusätzlich belasten würden (Mehrwert-Rufnummern).
Soweit besteht noch kein Grund, der einen davon abbringen könnte, das handelsübliche
Telefon für seine Gespräche zu verwenden; Das Besondere bei SkypeOut sind
jedoch die Kosten: Für Gespräche in die gängigsten Ziele werden nur 2 Cent
pro Minute berechnet (inklusive 15% belgischer Mehrwertsteuer, da Skype
in Belgien bilanziert).
Folgende Länder haben diesen günstigen Tarif: Argentinien (Buenos Aires),
Australien, Österreich, Belgien, Kanada, Kanada (Mobiltelefone), Chile,
China (Beijing, Guanzhou, Shanghai, Shenzhen), China (Mobiltelefone), Dänemark,
Frankreich, Deutschland, Griechenland, Hong Kong, Hong Kong (Mobiltelefone),
Irland, Italien, Mexiko (Mexiko City, Monterrey), Die Niederlande, Neuseeland,
Norwegen, Polen (Gdansk, Warschau), Portugal, Russland (Moskau, St. Petersburg),
Spanien, Schweden, die Schweiz, Taiwan (Taipei), England, die USA (außer
Alaska und Hawaii), die USA (Handys) und der Vatikan.
Die Tarife für alle weiteren Länder kann man hier einsehen:
www.skype.com/products/skypeout/rates/all_rates.html.
Bei SkypeOut muss man sein Guthaben, wie bei gängigen Prepaid-Handys, im
Voraus aufladen. Es gibt 10-Euro-Pakete im Angebot.
Bezahlen kann man per Paypal, Visa, Eurocard/Mastercard, Online-Bankbuchung,
normaler Banküberweisung, Dinersclub Karte oder Moneybookers.
Was ist SkypeIn?
Mit SkypeOut ist es möglich, von Skype aus ins Festnetz anzurufen, entsprechend
kann man mit SkypeIn vom Festnetz auf einen Skype-Account anrufen.
Das funktioniert so: man logt sich auf der Homepage der Skype-Entwickler
ein (www.skype.com) und bestellt sich dort eine Rufnummer. Es stehen verschiedene
Länder zur Verfügung, wobei der Bestellvorgang für jedes Land ein anderer
ist (manche Länder darf man beispielsweise nur als Bürger des entsprechenden
Landes auswählen). Dies kann den Vorteil haben, dass Sie z. B. für Ihre
amerikanischen Freunde unter einer amerikanischen Festnetznummer erreichbar
sind, aber hier in Österreich sitzen. Für den Gesprächspartner ist es eventuell
nur ein lokales Gespräch und daher um vieles günstiger als direkt in Österreich
anzurufen. Pro Skype-Account sind bis zu 10 SkypeIn-Telefonnummern registrierbar.
Der Preis für eine SkypeIn Nummer beträgt 10 Euro für 3 Monate, oder 30
Euro für 12 Monate.
Im Besitz einer solchen Rufnummer kann man angerufen werden, egal wo man
gerade ist. Wo man die SkypeIn-Nummer bestellt hat, spielt an sich keine
Rolle, nur dass das Telefongespräch des Anrufers so abgerechnet wird, als
würde er eine Nummer in dem entsprechenden Ort anrufen.
Richtiger Umgang mit Skype
Supernodes sind für das TUNET natürlich problematisch, wegen der hohen
Anzahl an Verbindungen und dem Traffic, der entsteht.
Es gibt jedoch einfache Verhaltensregeln im Umgang mit Skype, um dies zu
verhindern:
-
Skype nicht über Nacht laufen lassen, sondern beenden, wenn der Client
nicht mehr benötigt wird.
-
Skype nie auf Rechnern (Server) installieren, auf denen kein Benutzer lokal
arbeitet.
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 (Rechner hinter NAT-Routern
werden somit niemals Supernodes) und Skype muss tage- bzw. wochenlang ohne
Neustart laufen. Wenn man also die beiden obigen Verhaltensregeln beachtet,
wird der Skype-Client kein Supernode.
Um mit Skype komfortabel zu telefonieren ist ein Head- set sehr zu empfehlen,
über Mikrofon und Lautsprecher funktioniert es zur Not auch, aber dann
kann es zu störenden Echos bzw. Rückkoppelungen kommen.
Technische Details
Steuerung von NAT/Firewall durch Skype
"Über Supernode eine Gesprächsverbindung aufbauen" ist eine freundliche
Umschreibung für den kreativen Umgang mit den beteiligten NAT- und Firewall-Systemen.
Der Supernode kennt auf Grund der zu ihm von Nutzer A und Nutzer B bestehenden
TCP-Verbindung die Ports, die Nutzer A und Nutzer B jeweils zum Versenden
der Audiodaten verwenden.
Die folgende Technik wird
UDP hole punching2 genannt und Skype bedient
sich ihrer, um trotz Firewall auf beiden Seiten die Daten direkt von A
nach B zu bringen. Der von Nutzer A angerufene Nutzer B schickt zunächst
ein UDP-Paket an den ihm durch den Supernode mitgeteilten Port, den Nutzer
A für ausgehende Verbindungen nutzt. Dieses Datenpaket wird auf der Firewall
von Nutzer A blockiert, da es sich um ein unaufgefordert von außen gesendetes
Datenpaket handelt. Die Firewall bei Nutzer B merkt sich aber, dass über
diesen Port ein abgehendes Paket an Nutzer A gesendet wurde und öffnet
daher diesen Port für ankommende Datenpakete von Nutzer A. Dieser sendet
nun auf diesen bei Nutzer B geöffneten Port ein Paket, dort wird es als
gültige Antwort auf die zuerst geöffnete Verbindung gewertet und somit
sind auf beiden Firewalls die Ports geöffnet.
Audio-Übertragung
Dieser Mechanismus dient nur zum Aufbauen der Verbindung. Das eigentliche
Gespräch läuft dann direkt zwischen Nutzer A und Nutzer B (normalerweise
per UDP). Diese Vorgehensweise hat zumindest gewisse Ähnlichkeiten mit
einem STUN-Protokoll
3. Teilweise wird daher vermutet, Skype nutze (u.a.)
ein modifiziertes STUN-Protokoll. Allgemein gesprochen sind die in Skype
eingesetzten Methoden wie auch STUN-Technik dem
UDP hole punching zuzuordnen.
Relaying
Führt die eben beschriebene Methode bei besonders restriktiven Netzwerkkonstellationen
nicht zum Erfolg, geht Skype noch einen Schritt weiter: Das Gespräch wird
dann tatsächlich über andere Computer (D) geleitet (relaying). Idealerweise
sollte die eingesetzte Firewall zumindest ausgehenden UDP-Traffic zulassen
- was häufig der Fall sein wird. D wird vom Supernode in seiner Funktion
als Verwalter des bereits erwähnten Global Index ausgewählt.
Aber selbst wenn in Ausnahmefällen ausgehender UDP-Traffic von der Firewall
blockiert wird, kann Skype trotzdem häufig noch funktionieren, indem Skype
komplett auf TCP umschwenkt. Ausweislich des auf www. skype.com als PDF
veröffentlichten "Guide for Network Administrators" ist Skype nicht auf
UDP angewiesen: "Skype will work fine without the ability to transmit UDP
messages". Die Tonqualität wird freilich von reduzierter Qualität sein.
Relaying wird aber nur über Computer stattfinden, die über eine relativ
große Upload-Bandbreite verfügen und bei denen keine Firewall eingehende
TCP/UDP-Verbindungen auf dem in Skype festgelegten Port unterbindet.
Das Relaying ist übrigens nicht nur für die Audio-Übertragung, sondern
auch für eine eventuelle Dateiübertragung (file transfer) nützlich. Zwar
ist die Übertragungsrate dann sehr niedrig, aber immerhin kommt die Dateiübertragung
(anders als mit manch anderen Programmen) überhaupt zustande.
Spiegel-Interview mit dem Skype Manager
SPIEGEL ONLINE: Administratoren in Unternehmen mögen Skype überhaupt nicht.
Sie sagen, die Software durchlöchere die Firewall, wenn man sie installiert.
Jackson: Zuallererst: Skype reißt keine Löcher in Firewalls. Es öffnet
keine Ports, es nutzt vielmehr Ports, die schon offen sind. Warum machen
wir das? Wir wollten, dass die Software leicht zu installieren ist und
auf Anhieb läuft. Und so sucht sich die Software nach der Installation
selbst den Weg ins Internet. Wenn ein Administrator also eine Lücke in
seiner Firewall gelassen hat, dann wird Skype diese nutzen.
SPIEGEL ONLINE: Aber daran stören sich Administratoren, weil sie keinen
Einfluss darauf haben.
Jackson: Richtig. Wir erweitern die Software gerade um Funktionen, mit
denen Administratoren Skype besser kontrollieren können. Immerhin wird
Skype ja inzwischen zu 30 Prozent geschäftlich genutzt. Die Administratoren
können dann den Port einstellen, den das Programm nutzen soll. Andere Ports,
die vorher schon offen waren, werden so natürlich nicht geschlossen.
1 Für die Internet-Telefonie wird in der Regel ein Protokoll namens SIP verwendet.
SIP
steht für Session Initiation Protocol, was Sitzungs-Einleitungs-Protokoll
bedeutet. Wie dieser Name schon richtig beschreibt, ist es nur zum Einleiten
der Sitzung, also des Telefongesprächs verantwortlich, für die Übertragung
der Daten an sich kommt ein weiteres Protokoll ins Spiel, welches SDP-Protokoll
genannt wird. Diese Abkürzung steht für Session Description Protocol, die
Session (wieder ist unser Telefongespräch gemeint) wird hiermit also beschrieben.
Folglich werden mit diesem Protokoll die wichtigsten Daten des Gesprächs
übermittelt, nicht aber die eigentlichen Audiosignale! Diese werden mit
Hilfe des so genannten Realtime Transport Protocol (RTP) übertragen, welches
die Daten in Pakete schnürt und per UDP versendet (UDP, da dieses Protokoll
im Vergleich zu TCP/IP ein geringeres Datenvolumen-Aufkommen ermöglicht,
was bei Telefongesprächen nicht unwichtig ist). Achtung: Skype verwendet
nicht das SIP-Protokoll, es verwendet ein eigenes Protokoll.
2 NAT Traversal über STUN wird auch als UDP hole punching bezeichnet und
funktioniert bei den folgenden drei NAT Typen: Full Cone NAT, Restricted
Cone NAT und Port-Restricted Cone NAT. Andere NAT Umgebungen und auch NAT
Traversal zwischen symmetrischen NAT werden nicht unterstützt.
3 STUN (Simple Traversal of UDP Through NATs) - Über das STUN-Protokoll bzw.
durch einen STUN-Server können Probleme, die sich durch Router und Firewalls
ergeben, umgangen werden. Ein Router oder eine Firewall verbergen ein internes
Netzwerk vor dem Internet, in dem sie interne Netzwerkadressen nach außen
umwandeln (NAT = Network Adress Translation). Ein wichtiges Ziel beim STUN
ist es zunächst einmal, überhaupt mitzukriegen, welche Art von Firewall
vorliegt, dann kann eine Ausweichstrategie gefunden werden. Hierbei wird
eine Anfrage an einen öffentlichen STUN-Server gestellt ("wie lautet meine
öffentliche IP-Adresse und Port"), diese Information kann dann in die VoIP-Header
anstatt der privaten Adressen eingebaut werden.