NetWorker: Best practice per la configurazione di rete

Summary: Questo articolo ha lo scopo di fornire una semplice baseline per le opzioni di rete standard e desiderabili per gli host NetWorker.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

  • Errori correlati alla connettività di rete o host, inclusi, a titolo esemplificativo ma non esaustivo:
  • Errori dei backup che sembrano aver completato il trasferimento effettivo dei dati
  • Esaurimento generalizzato delle risorse o collasso delle comunicazioni
GSS warning Session information (number hex:hex) registered by user for nsrexecd has expired because a NetWorker daemon had not requested it after 120 minutes
GSS error Session information (number hex:hex) was requested by nsrmmd but the session has expired
RPC severe Unable to query NSR database for list of configured devices: RPC receive operation failed; peer = ip_addr:port, errno = Connection timed out
RPC severe Unable to query NSR database for list of configured devices: RPC send operation failed; peer = ip_addr:port, errno = Broken pipe
NSR notice Chunking ssid ssid failed, because saveset was aborted
ddp_open_file_ext() failed for File: //mtree/vol_dir/nn/nn/long_ssid, Err: 5004-nfs lookup failed (nfs: No such file or directory) ).
NSR critical Connectivity check request is failed for: SN_CONN_REPORT_DD type data_domain device
RPC error RPC client handle: No route to host.
RPC error RPC client handle: Connection refused.
RPC error Unable to create the connection with 'portmapper' to host 'hostname' with address 'ip_addr' at port number 7938.
RPC critical Aborting client connection from ip_addr: Connection timed out.
RPC critical Check whether the firewall is blocking the client ports on the host 'hostname'.
RPC critical Check whether the client services are running on the host 'hostname'.

Cause

NetWorker è un'applicazione che crea molti socket sia in locale sia per gli host remoti durante le normali operazioni. Sebbene i server e gli storage node ne creino in genere di più, anche la configurazione client può influire sull'esito positivo dei processi. 

Ricordi: Ogni socket creato da un processo chiamante NetWorker per connettersi a un processo daemon listener può essere interrotto se lasciato inattivo troppo a lungo dai dispositivi di rete che tentano di recuperare risorse. In genere, ciò richiede che i keepalive siano abilitati per impostazione predefinita per il server NetWorker e i nodi e che i client riscontrano problemi. NetWorker dispone di una propria gestione interna di keepalive per alcuni binari (ma non per tutti). Il sistema operativo dispone anche di keepalive che devono essere attivati per impostazione predefinita.

Disponibilità porte: Ogni socket stabilito da NetWorker richiede una porta nell'intervallo effimero da cui comunicare, ma questo intervallo è limitato per impostazione predefinita in tutti i sistemi operativi e deve essere aperto nella massima misura possibile per non limitare artificialmente le comunicazioni. Con nsrauth abilitato per impostazione predefinita, il numero di porte richieste per un singolo socket desiderato sarà almeno 3 e ogni errore potrebbe ritentare rapidamente, lasciando le porte in TIME_WAIT fino a quando la connessione non riesce. Per questo motivo, il numero massimo disponibile di porte dovrebbe essere aumentato, con stati di TIME_WAIT idealmente inferiori.

Altri socket a esecuzione prolungata possono anche essere rafforzati con specifiche variabili software interne che consentono una maggiore resilienza o migliorano il buffering.

Resolution

Di seguito sono riportate le consuete impostazioni consigliate per sistema operativo e classe host insieme ai relativi comandi di implementazione. Sempre, l'applicabilità varia; Quelli considerati universalmente desiderabili non sono commentati, mentre quelli con idoneità più variabile sono commentati, ma disponibili per l'uso al bisogno. Queste impostazioni sono fornite in buona fede come raccomandazioni generali, ma devono essere esaminate dagli amministratori del sistema operativo prima dell'implementazione. Questi sono considerati i casi migliori per tutti i casi predefiniti per server e storage node. L'idoneità del client può variare in base alla configurazione e al ruolo in un determinato ambiente e, in questi casi, è necessario considerare attentamente prima dell'uso, poiché ruoli di server applicazioni diversi potrebbero entrare in conflitto con le impostazioni consigliate: in questi casi, le impostazioni richieste dal ruolo devono avere la priorità. 

Linux: Tutte le impostazioni appropriate devono essere inserite nel /nsr/nsrrc file, che deve disporre di autorizzazioni globali di lettura/esecuzione (755) per poter essere eseguito all'avvio del servizio. Le voci standard predefinite non sono commentate, con opzioni non standard o circostanziali commentate. Modificare la disponibilità delle impostazioni utilizzando il prefisso # sulle righe pertinenti. Tagliare il file in base alle esigenze dei client, dei nodi o dei server NetWorker, a seconda della posizione in cui verrà implementato. Dopo aver apportato modifiche, sarà necessario riavviare il servizio. 

### LINUX - For all NetWorker hosts - Clients, Nodes and Server
NSR_KEEPALIVE_WAIT=10
export NSR_KEEPALIVE_WAIT
NSR_EXEC_MAX_AUTH_THREADS=50
export NSR_EXEC_MAX_AUTH_THREADS
# NSR_SOCK_BUF_SIZE=65536 # (262144 for 10 Gb ETH NICs)
# export NSR_SOCK_BUF_SIZE

# NetWorker internal keepalive settings for some, but not all binaries - 4.5 minutes to ensure keepalives are passed before the increasingly common 5 minute router idle socket kill timer
NW_TCP_KEEPIDLE_SECS=270
export NW_TCP_KEEPIDLE_SECS
NW_TCP_KEEPINTVL_SECS=30
export NW_TCP_KEEPINTVL_SECS
NW_TCP_KEEPCNT=10
export NW_TCP_KEEPCNT

# OS-level keepalive values - also set to 4.5 minutes for the same reason
sysctl -w "net.ipv4.tcp_keepalive_intvl=30"
sysctl -w "net.ipv4.tcp_keepalive_probes=10"
sysctl -w "net.ipv4.tcp_keepalive_time=270"

# Set kernel limits to ensure core dump generation
ulimit -Sn 262144
ulimit -Sc unlimited

### For NetWorker Storage Nodes and Server
# Set kernel limits to provide maximum file descriptor availability
ulimit -Hn 262144 ulimit -Hc unlimited

# Globally disable IPv6, if it is not necessary for operation:
# sysctl -w "net.ipv6.conf.all.disable_ipv6=1"

# Disable dynamic TCP window scaling - requires compatible equipment in the data path, as well as ECN sysctl -w "net.ipv4.tcp_window_scaling=0" sysctl -w "net.ipv4.tcp_ecn=0" # Raise connection backlog (hash tables) to the maximum value allowed if desired # sysctl -w "net.ipv4.tcp_max_syn_backlog=8192" # sysctl -w "net.core.netdev_max_backlog=8192" # (For 10 Gb Eth use the value = 30000) # Raise memory size available for TCP buffers as needed # sysctl -w "net.core.rmem_default=262144" # sysctl -w "net.core.wmem_default=262144" # sysctl -w "net.core.rmem_max=16777216" # sysctl -w "net.core.wmem_max=16777216" # sysctl -w "net.ipv4.tcp_rmem=8192 524288 16777216" # sysctl -w "net.ipv4.tcp_wmem=8192 524288 16777216" # Increase shared memory pool if required - particularly for immediate mode on Storage Nodes # sysctl -w kernel.shmmax = 2147483648 # - e.g. 2 GB # sysctl -w kernel.shmall = 2147483648 # - e.g. 2 GB # Available TCP client ephemeral port range increase from default: sysctl -w "net.ipv4.ip_local_port_range=10000 64000" # Enable TCP Time Wait Reuse for very high load servers and nodes to increase socket reuse availability sysctl -w "net.ipv4.tcp_tw_recycle=0" sysctl -w "net.ipv4.tcp_tw_reuse=2" # Lower TIME_WAIT delay to close connections more quickly. This may not be necessary in concert with tw_reuse. # sysctl -w "net.ipv4.tcp_fin_timeout=30" # NFS I/O concurrency: sysctl -w "sunrpc.tcp_slot_table_entries=128" sysctl -w "sunrpc.udp_slot_table_entries=128" ### For NetWorker Server only # Settings to increase device resilience for cloud operations or other potentially high-latency devices # NSR_DEVOP_TIMEOUT=3600 # export NSR_DEVOP_TIMEOUT # NSR_DEVOP_POLLING_INTERVAL=600 # export NSR_DEVOP_POLLING_INTERVAL # NSR_DEVOP_INQUIRY_TIMEOUT=900 # export NSR_DEVOP_INQUIRY_TIMEOUT

### Media database tunables
# NSR_TCP_READ_LONG_WAIT=Y # export NSR_TCP_READ_LONG_WAIT # NSR_MAX_MEDIADB_RETRY=10 # export NSR_MAX_MEDIADB_RETRY
# MMDB_SQLITE_CONFIGURE_MEMORY=1
# export MMDB_SQLITE_CONFIGURE_MEMORY
# MMDB_SQLITE_PAGECACHE_SIZE=65536
# export MMDB_SQLITE_PAGECACHE_SIZE
# MMDB_SQLITE_PAGE_COUNT=65536
# export MMDB_SQLITE_PAGE_COUNT
# MMDB_SQLITE_HEAP_SIZE=1073741824
# export MMDB_SQLITE_HEAP_SIZE
# MDB_SQLITE_HEAP_MIN_ALLOC_SIZE=128
# export MDB_SQLITE_HEAP_MIN_ALLOC_SIZE

 


Windows: Dal momento che la /nsr/nsrrc al momento non esiste un file per Windows, le modifiche devono essere eseguite utilizzando un file batch, ad es. nsrrc.bat o altro metodo di deployment. I comandi vengono forniti qui dove esiste un'opzione basata su comandi. Queste modifiche sono globali e non devono essere eseguite ripetutamente. Come quello di Linux nsrrc , le voci standard predefinite non sono commentate, con opzioni non standard o circostanziali commentate. Modificare la disponibilità delle impostazioni utilizzando REM prefisso sulle righe pertinenti. Tagliare il file in base alle esigenze dei client, dei nodi o dei server NetWorker, a seconda della posizione in cui verrà implementato. Dopo aver apportato modifiche, sarà necessario riavviare il servizio.

REM ### WINDOWS - For all NetWorker hosts - Clients, Nodes and Server
REM # TCP window size tuning - greater throughput / Data Domain
REM reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters /v DefaultSendWindow /t REG_DWORD /d 262144 /f
REM reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AFD\Parameters /v DefaultReceiveWindow /t REG_DWORD /d 262144 /f
REM reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v GlobalMaxTcpWindowSize /t REG_DWORD /d 262144 /f
REM reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v TcpWindowSize /t REG_DWORD /d 262144 /f

REM # Global keepalive registry settings - 270s to fall below common idle socket timer kills of 300s
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v KeepAliveTime /t REG_DWORD /d 270000 /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v KeepAliveInterval /t REG_DWORD /d 10000 /f
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v TcpMaxDataRetransmissions /t REG_DWORD /d 10 /f

REM # Global NetWorker keepalive and connectivity variables
setx /m NW_TCP_KEEPIDLE_SECS 270
setx /m NW_TCP_KEEPINTVL_SECS 30
setx /m NW_TCP_KEEPCNT 10
setx /m NSR_KEEPALIVE_WAIT 10
setx /m NSR_EXEC_MAX_AUTH_THREADS 50
REM setx /m NSR_SOCK_BUF_SIZE=65536 # (262144 for 10 Gb Eth NICs)

REM ### For NetWorker Storage Nodes and Server
REM # Standard TCP features - disable in case of disconnections
REM netsh interface tcp set global rss=disabled
REM netsh interface tcp set global autotuning=disabled
REM netsh interface tcp set global ecncapability=disabled
REM netsh interface tcp set global timestamps=default

REM # Port range availability for TCP client callers
netsh int ipv4 set dynamicport tcp start=10000 num=54000
netsh int ipv4 set dynamicport udp start=10000 num=54000
netsh int ipv6 set dynamicport tcp start=10000 num=54000
netsh int ipv6 set dynamicport udp start=10000 num=54000

REM # Global port maximum (deprecated) and TIME_WAIT window REM reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v MaxUserPort /t REG_DWORD /d 65535 /f reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v TcpTimedWaitDelay /t REG_DWORD /d 30 /f
REM # Disable IPv6 if not required
REM reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 0x000000ff /f
REM ### For NetWorker Server only REM # Settings to increase device resilience for cloud operations or other potentially high-latency devices REM setx /m NSR_DEVOP_TIMEOUT 3600 REM setx /m NSR_DEVOP_POLLING_INTERVAL 600 REM setx /m NSR_DEVOP_INQUIRY_TIMEOUT 900
REM ### Settings for media database tuning
REM setx /m NSR_TCP_READ_LONG_WAIT Y REM setx /m NSR_MAX_MEDIADB_RETRY 10
REM setx /m MDB_SQLITE_HEAP_MIN_ALLOC_SIZE 128
REM setx /m MMDB_SQLITE_CONFIGURE_MEMORY 1
REM setx /m MMDB_SQLITE_HEAP_SIZE 1073741824
REM setx /m MMDB_SQLITE_PAGE_COUNT 65536
REM setx /m MMDB_SQLITE_PAGECACHE_COUNT 65536
REM setx /m MMDB_SQLITE_TMP
path_to_temp_dir

Additional Information

Affected Products

NetWorker
Article Properties
Article Number: 000218894
Article Type: Solution
Last Modified: 07 Oct 2025
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.