TCP mágia

Kezdőlap Fórumok Programozás TCP mágia

3 bejegyzés megtekintése - 11-13 / 13
  • Szerző
    Bejegyzés
  • #2150538
    ds
    Felhasználó
      linuxforum wrote:
      Ráadásul hangsúlyozom, hogy a connect után az első dolog, amit csinálog, egy logbejegyzés, és az sem készül el, tehát én úgy érzem, hogy ezek a kapcsolatok nem jutnak el a programomig, így semilyen eszközt nem látok amivel befolyásolhatnám.

      tehát valami ilyesmit csinálsz:

      Code:
      $sock = new IO::Socket::INET( LocalHost => IP, LocalPort => PORT, Proto => ‘tcp’, Listen => SOMAXCONN, Reuse => 1);
      while( 1 ) {
        while( $new_sock = $sock->accept() ) {
          kiiratás/logolás más semmi
      }
      }

      (a teszt idejére jó lenne kivenni a fork-ot meg tényleg mindent)
      és akkor is megjelnnek ezek az érdekes kapcsolatok?

      #2150539
      ds
      Felhasználó
        linuxforum wrote:
        Ráadásul hangsúlyozom, hogy a connect után az első dolog, amit csinálog, egy logbejegyzés, és az sem készül el, tehát én úgy érzem, hogy ezek a kapcsolatok nem jutnak el a programomig, így semilyen eszközt nem látok amivel befolyásolhatnám.

        tehát valami ilyesmit csinálsz:

        Code:
        $sock = new IO::Socket::INET( LocalHost => IP, LocalPort => PORT, Proto => ‘tcp’, Listen => SOMAXCONN, Reuse => 1);
        while( 1 ) {
          while( $new_sock = $sock->accept() ) {
            kiiratás/logolás más semmi
        }
        }

        (a teszt idejére jó lenne kivenni a fork-ot meg tényleg mindent)
        és akkor is megjelnnek ezek az érdekes kapcsolatok?

        #1887726
        csaba
        Felhasználó

          Van egy perl programom, ami TCP-n keresztül fogadna adatot hardver eszközöktől.
          Gyakran fogad is, de néha a netstat -pa ezt mondja:

          Code:
          tcp    63228 0 server:43210    client:33875 ESTABLISHED –    

          És meglepő módon ezek a kapcsolatok megmaradnak, bár a kliens eszközök lekapcsolódnak.
          Hogyan lehet, hogy egy kiépített TCP kapcsolat nem tartozik programhoz? Hisz ezt a portot csak az én programom kezeli. Hogyn épülhet ki a kapcsolat, ha az én programom meg sem kapja a kapcsolatot? Ugyanis próbáltam logolni is a kapcsolatok kiépülését, és úgy tűnik, hogy ilyen esetben el sem indul a program, azaz a $sock->accept() függvény nem ad újabb eredményt, nem is tudok processzt forkoltatni, hogy fogadja az adatokat.
          Lehetséges egyáltalán hozzáférnem az ilyen kapcsolatokhoz?
          Vagy ezek elvesztek a semmibe?
          Igazából elvileg nem látom, mi lehet ilyenkor a helyzet!

        3 bejegyzés megtekintése - 11-13 / 13
        • Be kell jelentkezni a hozzászóláshoz.