Wie kann ich in Wireshark RTP-Streams erkennen und analysieren?
- Einführung in RTP und Wireshark
- RTP-Pakete automatisch erkennen
- RTP-Streams anzeigen
- RTP-Stream analysieren
- Filterung und detaillierte Untersuchung
- Zusammenfassung
Einführung in RTP und Wireshark
RTP (Real-time Transport Protocol) ist ein weit verbreitetes Protokoll zum Transport von Echtzeitdaten, insbesondere für Audio- und Videoübertragungen in IP-Netzwerken, wie beispielsweise bei VoIP-Anwendungen. Wireshark ist ein leistungsfähiges Tool zur Protokollanalyse, das auch RTP-Pakete erkennen und detailliert analysieren kann. Das Erkennen und Analysieren von RTP-Strömen ist hilfreich, um Qualitätsprobleme bei Sprach- und Videokommunikation zu diagnostizieren oder den Transport von Medieninhalten genauer zu untersuchen.
RTP-Pakete automatisch erkennen
Nach dem Öffnen einer Aufzeichnung (.pcap) mit Wireshark prüft das Programm automatisch, ob RTP-Pakete enthalten sind. Da RTP oft über UDP auf bestimmten Ports übertragen wird, erkennt Wireshark RTP-Pakete einerseits über vordefinierte Ports, andererseits gelingt die Erkennung auch über heuristische Methoden, bei denen das Programm das Paketformat und die Header-Felder auf Übereinstimmung mit dem RTP-Protokoll überprüft.
Ein Problem ist, dass RTP nicht immer auf standardisierten Ports verläuft, weil Ports dynamisch vergeben werden. Deshalb ist die automatische Erkennung manchmal limitiert. Hier hilft die voreingestellte Diagnose über das Menü Telephony, die gezielt RTP-Kommunikation identifiziert.
RTP-Streams anzeigen
Um RTP-Streams in Wireshark sichtbar zu machen, wählen Sie im Hauptmenü Telephony und dann den Punkt RTP gefolgt von Show All Streams. In diesem Dialog werden alle erkannten RTP-Ströme gelistet, die aus der aktuellen Aufzeichnung identifiziert wurden. Dies umfasst unter anderem Informationen über die Quell- und Ziel-IP-Adressen sowie Portnummern. So können Sie schnell einen Überblick über die vorhandenen RTP-Verbindungen gewinnen.
Für den Fall, dass Wireshark keine RTP-Pakete anzeigt, obwohl Medienverkehr vorhanden ist, kann es sinnvoll sein, vorhandene UDP-Streams manuell als RTP zu analysieren. Dies geschieht meist über die Funktion Decode As…, bei der man einen bestimmten UDP-Port explizit als RTP definieren kann, um so eine korrekte Interpretierung der Pakete zu erreichen.
RTP-Stream analysieren
Sobald ein RTP-Stream ausgewählt wurde, können Sie diesen detailliert analysieren. Per Klick auf Analyze werden verschiedene statistische Angaben aufgerufen. Dazu zählen der Paketverlust, die Reihenfolge der Pakete, Jitter (also Schwankungen der Paketankunftszeiten), sowie die Verzögerungen. Diese Parameter sind essenziell, um die Qualität der Übertragung zu beurteilen.
Wireshark erlaubt zudem die Wiedergabe des Audiostreams, sofern die enthaltenen Daten mit einem unterstützten Codec vorliegen. Über Player kann man die Audioausgabe starten und so die tatsächliche Medienqualität anhören.
Filterung und detaillierte Untersuchung
Um gezielt RTP-Pakete zu analysieren, kann man Wireshark-Filter verwenden. Der Filter rtp zeigt nur RTP-Pakete an, was die Analyse erheblich erleichtert. Alternativ kann man auch nach UDP-Ports filtern, die im RTP-Kontext verwendet werden, z. B. udp.port == 5004.
Auf Paketebene kann man sich die detaillierten Headerfelder des RTP-Protokolls anschauen, um etwa den Sequenznummernverlauf, die Timestamp-Werte und die Synchronisationsquellen-ID (SSRC) zu untersuchen. Diese Informationen helfen dabei, Fehler im Stream, wie Paketverlust oder Duplikate, zu identifizieren.
Zusammenfassung
Zusammenfassend erkennt Wireshark RTP-Pakete automatisch und bietet über das Menü Telephony umfangreiche Werkzeuge zur Visualisierung und Analyse der RTP-Streams. Mit statistischen Auswertungen und der Möglichkeit zur Audio-Wiedergabe erhält der Anwender tiefgehende Einblicke in die Qualität und Struktur der Echtzeitdatenübertragung. Ergänzend helfen Display-Filter und die Möglichkeit, UDP-Pakete manuell als RTP zu deklarieren, um auch in kommerziellen oder proprietären Szenarien erfolgreich eine Analyse durchzuführen.
