Home › Forum › Controllori SlimLine e Netsyst (LogicLab) › Sockets insufficenti su sistema server con TCPDataExchServer
- Questo topic ha 1 risposta, 1 partecipante ed è stato aggiornato l'ultima volta 1 anno, 3 mesi fa da
Sergio Bertana.
-
AutorePost
-
Maggio 26, 2025 alle 2:12 pm #82443
Anonimo
InattivoHo una applicazione con 28 sistemi SlimLine client su cui è eseguito il FB TCPDataExchClient connessi ad un sistema SlimLine sever sui cui è eseguito il FB TCPDataExchServer.
Normalmente tutti i clients sono regolarmente connessi, ma quando connetto LogicLab al sistema server perdo la connessione con uno dei sistemi client. Ho eseguito da telnet il comando SysLog e mi trovo con questi errori:
[01/01/1970 01:00:00.000] [L] SFR050[ 1020] Simulated RTC in use [01/01/1970 01:00:00.343] [L] SFW198[ 5005] Starting Op. System SFW210C010 [01/01/1970 01:00:02.451] [E] SFW198[ 4040] Too many socket [01/01/1970 01:00:04.705] [L] SFW198[ 6000] Run ApplID:0x3785D6B4 [01/01/1970 01:00:06.300] [L] SFR050[14025] Ethernet Link ok [01/01/1970 01:00:14.942] [W] SFW198[ 6000] User program error:10061100 [01/01/1970 01:00:15.006] [W] SFR055[ 7100] No free pending
Quale può essere la causa del problema.
Maggio 26, 2025 alle 2:20 pm #82446Sergio Bertana
Amministratore del forumIniziamo con il dire che guardando il report di SysLog vedo che non hai l’opzione RTC sul sistema Simulated RTC in use quindi tutti gli orari iniziano dall’Epoch time.
Venendo al tuo problema ricordo che il sistema operativo SFW210C010 supporta fino a 32 sockets, 5 sockets sono già utilizzati dal sistema operativo con il comando NetStat vediamo:
[Admin]> netstat Id Proto Local Address Foreign Address Status [00] UDP 0.0.0.0:9999 *.* [01] TCP 0.0.0.0:23 0.0.0.0:0 LISTENING [02] TCP 0.0.0.0:502 0.0.0.0:0 LISTENING [03] TCP 0.0.0.0:80 0.0.0.0:0 LISTENING [04] TCP 0.0.0.0:21 0.0.0.0:0 LISTENING [05] TCP 192.168.0.181:23 192.168.1.251:58434 ESTABLISHED
Ad ogni connessione come ad esempio la connessione Telnet (porta 23) si ha un socket aperto in ascolto (LISTENING) ed uno o più sockets (Dipende dal numero di connessioni accettate) in ESTABLISHED. Quindi nel tuo caso non puoi avere 28 connessioni perchè dalle 32 devi già toglierne 5 e comunque il FB TCPDataExchServer per gestire 28 connessioni utilizza 29 sockets (1 in LISTENING e 28 in ESTABLISHED).
Per capire quanti sono effettivamente i client connessi devi eseguire il comando NetStat e verificare quanti sockets hai in ESTABLISHED sulla porta definita del server. Per avere accesso al sistema sia in Telnet che in LogicLab ed in HTTP occorrono almeno 8 sockets liberi, quindi il massimo di clients che puoi gestire sono 24.
Nel tuo caso avendo 28 clients ti consiglio di configurare 2 sistemi come server magari scambiando i dati tra di loro con il FB DataTransfer per tenere l’area di memoria sincronizzata tra di loro.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.