In NetXMS every agent can operate as a proxy, collecting data from other agents, via SNMP, etc... If your locations have overlapping IP addresses, then you need to use zones. Event if addresses are not overlapping, it's convenient to use zones, as you can set proxies in zone properties and nodes added to this zone will be monitored via there proxies.
Proxies accumulate collected data if there's no connection to central server. Proxies have high availability mechanism - if more then one proxy is configured on a zone, proxies will extablish p2p communication between them to decide which proxy is collecting data.
There's a lot in admin documentation https://netxms.org/documentation/netxms-admin.pdf , but some things may be not yet covered, so feel free to ask questions.