Jump to content

Roundtrip Zeiten messen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo und guten Morgen,

 

wir haben bei einem Kunden ein interessantes Phänomen. Und zwar nutzt der Kunde ein Citrix CSG um auf seine Terminalserver zuzugreifen. Die Verbindungen brechen unregelmäßig ab. Auch die Latenz in der Sitzung ist naja.. ;) Also man merkt beim Eingeben von Text eine Verzögerung von ca. 300 - 500ms. (Gefühlt)

 

Dies als Background. Jetzt zum eigentlichen.Der Kunde hat eine neue 20MB LWL Leitung bekommen und eine WLAN Richtfunkstrecke zwischen zwei Standorten bekommen.

Vorher, als es noch sauber lief, kam der Traffik an Standort A über eine LWL 6 MBit Leitung an und ging direkt auf den Terminalserver.

Jetzt kommt der Verkehr auf der 20MBit Leitung in Standort B an und geht über die Funkstrecke zu Standort A zum Terminalserver.

 

Erste Vermutung, es kann nur die WLAN Strecke sein. Wenn ich aber nun einen Pinge zwischen Standort B und A sende, ping -l 1500 -t 1.1.1.1 dann habe ich maximal 25ms Verzögerung. Aber Minimum 5ms.

 

Dies erklärt nun nicht die gefühlten 200-500ms in der Terminalsitzung.

 

 

Wenn ich von meinem Büro (weder im Standort A oder B) auf einen Terminalserver im Internet (vServer bei Strato) zugreife, habe ich beim Ping eine Latenz von ca 25 - 40ms, aber das Arbeiten ist deutlich flüssiger.

 

Wir fragen uns nun, woher diese hohe Latenz kommt.

 

Hat jemand ein Tool, womit ich sauber ein TCP Paket verschicken kann und die Roundtrip Zeit messen kann?

Oder vielleicht sogar noch einen besseren Vorschlag? ;)

 

Vielen Dank.

Link zu diesem Kommentar

Hallo,

 

das kleine Programm liefert u.a. die roundtriptime

 

Aufruf: roundtrip http://www.mcseboard.de'>http://www.mcseboard.de

 

mögliche Ausgabe:

 

roundtrip.exe http://www.mcseboard.de

Address: 109.239.55.232

RoundTrip time: 54

Time to live: 54

Don't fragment: False

Buffer size: 32

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.NetworkInformation;

namespace roundtrip
{
   class Program
   {
       static void Main(string[] args)
       {
           if (args.Length == 1)
           {
               ComplexPing(args[0]);
           }

       }

       public static void ComplexPing(string destination)
       {
           Ping pingSender = new Ping();

           // Create a buffer of 32 bytes of data to be transmitted.
           string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
           byte[] buffer = Encoding.ASCII.GetBytes(data);

           // Wait 10 seconds for a reply.
           int timeout = 10000;

           // Set options for transmission:
           // The data can go through 64 gateways or routers
           // before it is destroyed, and the data packet
           // cannot be fragmented.
           PingOptions options = new PingOptions(64, true);

           // Send the request.
           PingReply reply = pingSender.Send(destination, timeout, buffer, options);

           if (reply.Status == IPStatus.Success)
           {
               Console.WriteLine("Address: {0}", reply.Address.ToString());
               Console.WriteLine("RoundTrip time: {0}", reply.RoundtripTime);
               Console.WriteLine("Time to live: {0}", reply.Options.Ttl);
               Console.WriteLine("Don't fragment: {0}", reply.Options.DontFragment);
               Console.WriteLine("Buffer size: {0}", reply.Buffer.Length);
               Console.ReadLine();
           }
           else
           {
               Console.WriteLine(reply.Status);
           }
       }

   }
}

Der Code ist zum größten Teil aus:

PingReply.RoundtripTime-Eigenschaft (System.Net.NetworkInformation)

roundtrip.zip

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...