Ankündigung

Einklappen
Keine Ankündigung bisher.

Timeout für Anfrage an IP-Gerät einstellen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    HS/FS Timeout für Anfrage an IP-Gerät einstellen

    Ich setze einen Gira Home server 3 ein, um einige IP-fähige Geräte zu steuern und zu überwachen. Es sind ca. 15 PCs (XP), ca. 10 Projectoren und ca. 10 andere IP-Geräte.
    Meine IP Nachrichten sende ich über die Option "Web-Seiten/IP-Geräte" vom HS.
    Die klappt eigentlich ganz ordentlich, solange die Geräte auch immer die erwartete Antwort zurück senden.
    Probleme gibts jedoch, wenn ein Gerät nicht Antwortet auf meine Anfrage. Dann blockiert der HS den ganzen Netzwerkverkehr für ca. 15-30 Sekunden. In dieser Zeit häuft sich dann eine Queue von IP-Nachrichten an, welche verzögert werden.

    Meine Frage ist nun, ob es eine möglichkeit gibt die Zeit, welche der HS auf die Antwort wartet auf z.B. 1 Sekunde zu verkürzen (Timeout)??

    Ich habe bis jetzt nur die Option "Verbindung nach einer bestimmten Anzahl an Daten beenden" gefunden. Die hilft mir aber natürlich nicht, wenn ich keine Daten zurück bekomme.

    Weiss jemand etwas über eine Timeout-Funktion oder habt ihr Ideen um das Problem anders zu umgehen? Bin für jede Hilfe dankbar....

    Gruss David

    #2
    Du köntest vorher mit dem Baustein Hostcheck überprüfen ob der host auf ein ICMP Ping antwortet.

    Welche Firmware hast du ?

    Die 2.4er Firmware hat auf jedenfall in dem dort verwendeten Python 2.4 eine Timeoutfunktion für Socket-Operationen.

    Wenn die nicht auf die Timeout-Einstellungen der Webabfragen angewendet würden fände ich das merkwürdig.

    Bei Firmware 2.32 oder kleiner wird das nicht gehen, da das verwendete Python in der Version 2.2 die Timeouts bei blocking Operationen nicht unterstützt.
    Nils

    aktuelle Bausteine:
    BusAufsicht - ServiceCheck - Pushover - HS-Insight

    Kommentar


      #3
      Oh vergessen,

      oder du machst die Abfragen per Logik

      https://knx-user-forum.de/knx-eib-fo...ne-laenge.html
      Nils

      aktuelle Bausteine:
      BusAufsicht - ServiceCheck - Pushover - HS-Insight

      Kommentar


        #4
        Firmware update

        Ok, danke Nils!

        Ich bin im Moment auf Firmware 2.3.2! wusste nichts von der neuen Firmware...
        Ich werde jetzt mal als erstes die Firmware updaten und dann schauen was mir das für neue Möglichkeiten bietet...

        schon mal vielen Dank für die schnelle Antwort.

        Kommentar


          #5
          Hab jetzt die Firmware 2.4 rauf gespielt. Das Problem mit dem TCP Timeout besteht weiterhin.
          Nach meinen Beobachtungen ist das Timeout beim ersten Versuch mit einem Gerät zu verbinden ca. 30 Sekunden. Ist der Verbindungsversuch erfolglos, ist das Timeout bei allen weiteren Versuchen (auf diese IP) ca. 3 Sekunden. Kommt mir irgendwie komisch vor. Kann das sein?

          Eine möglichkeit die Timeout Zeit selber zu bestimmen habe ich auch beim Experten 2.4 nicht gefunden.

          Wenn ich also die Zeiten selber bestimmen möchte, muss ich mir per Python einen eigenen Logikbaustein basteln, welcher eigentlich die Funktion "Webseite / IP-Geräte" nachbaut??

          @Nils: oder kann ich mit dem Baustein urllib auch mit IP-Geräten kommunizieren?

          Kommentar


            #6
            Der Timeout beim HS ist fix und nicht einstellbar.
            Gruß Matthias
            EIB übersetzt meine Frau mit "Ehepaar Ist Beschäftigt"
            - PN nur für PERSÖNLICHES!

            Kommentar


              #7
              Zitat von davidhaenggi Beitrag anzeigen
              @Nils: oder kann ich mit dem Baustein urllib auch mit IP-Geräten kommunizieren?
              Jain, kommt drauf an was du damit meinst? Das was die Webabfrage des HS kann auf jeden Fall.

              Desweiteren kann die urllib Redirekts folgen Browser emulieren (inkl Accept-Encoding,Charset... für Hosts die das auslesen per Script über 403 Bad Behaviour eigentlich verhindern wollen)

              Auch Telnet Verbindungen die die Verbindung auch wieder beenden sind möglich. (z.B. eine ls / oder ps aufzurufen und danach ein exit -- die Ausgabe wird an den Ausgang der Logik gesendet.)

              Was damit nicht möglich ist, ist eine Verbindung aufrecht zu halten und
              kontinuierlich Daten darüber auszutauschen. (steht aber mal als weiterer Baustein auf meiner (derzeit viel zu langen) TODO
              Nils

              aktuelle Bausteine:
              BusAufsicht - ServiceCheck - Pushover - HS-Insight

              Kommentar

              Lädt...
              X