Differences between revisions 4 and 5

Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Dieser Artikel befindet sich in Arbeit und darf nicht als vollständig oder richtig angenommen werden =

= 2 Phasenmodel =

== einfacher UDP repeater ==

Der Anycast Proxy/Media Relay leitetet nur udp Pakete weiter.

=== benötigte syncronisierte Daten ===

Benutzerauthorisierung zur Benutzung des Diensts
Die Authentifizierung wird per SIP/SDP vorgenommen. Die Information über eine erfolgreiche Authentifizierung wird zwischen den Proxys syncronisiert.

Sessioninformation wer ist Sender/Empfänger
Media Ports und Destination/Source IP aus SIP

== TCP Kapselung ==

attachment:anycast-voip-diagramm.pdf

=== Verbindungsausfbau ===

Das VOIP Telefon registriert sich beim Media Relay und wird in dessen Session Table aufgenommen.

=== Keepalive ===

Es werden Abstände für keep alive Pakete vereinbart.
Die Information über die Aufgebaute Verbindung (IP Adressen, Ports, Sequence Number) wird an die
anderen Media Relays übertragen. Zusätzlich wird noch das vereinbarte keep alive Intervall mit
übertragen. Dadurch können die anderen Media Relays mitrechnen, wann Keep Alive Pakete gesendet
werden und wissen die Sequence Number.

=== Nutzdatenübertragung ===

Baut nun ein externer Anrufer eine Verbindung auf, leitet das kontaktierte Media Relay (dieses
muss nicht identisch sein mit dem, das die keep alive Pakete schickt) die Daten zum Telefon weiter unter
Benutzung der errechneten sequence number.

Sollte dies zu einem Zeitpunkt passieren, der kurz vor einem erneuten keep alive paket liegt, wird
dieses zusätzlich generiert. Sollte dieses dann auch von einem weiteren Media Relay generiert werden
so wird das vom angerufenen Telefon als doppeltes Paket interpretiert und verworfen.

==== Variante 1 ====
Die Pakete von Anrufer enthalten zusätzlich einen Zähler, der von Null beginnend mit jedem Paket
um eins erhöht wird. Dieser Zähler wird zu errechneten sequence number addiert, somit kann jedes
Relay Pakete mit gültiger sequence number schicken.

==== Variante 2 ====
Es werden vorhandene Sequenze Nummern verwendet. Der Offset muss syncronisiert werden


==== Retransmission ====
Das Relay speichert die Pakete falls eine Retransmission nötig sein sollte. Erhält ein Relay ein ACK
Paket, so überträgt es dieses an alle anderen Relays. Erhält ein Relay für übertragene Daten kein ACK
so werden diese erneut übertragen.

Hier sind die größten Performance Probleme zu erwarten.

=== Verbindungsabbau ===
See Internet draft

See Internet draft

anytun: Entwurf Anytun (last edited 2008-06-25 22:47:20 by otti)