We are starting to have a few projects that have a design where a web server needs access to services/devices (think database connections and specialized hardware) that are on a local network. Instead of having users open up ports to the public internet, we are using a small program that establishes a connection from inside their network to connect to those devices and then establish a persistent connection that the server can use to request information from that program.

EDIT: Diagram

Diagram of the description

I've thought of a few terms, but I wasn't sure if there is a generally accepted term for such a program

  • Agent: This one seems kind of intuitive, but it seems like it means something else.
  • Proxy: Maybe, I typically think of a client connecting to a proxy, not the other way around.
  • Service: This indicates it's a long running process that does something in the background, but nothing specific about communication.
  • Sounds like a firewall to me. Or perhaps a proxy server. Commented Feb 9, 2019 at 0:34
  • The user guide for AWS VPN contains a lot of terminology similar to your situation. However, they also use words for meanings that are somewhat different from the typical public usage of these words. Perhaps you can consult a few technical terminology sources and decide what definitions to use.
    – rwong
    Commented Feb 9, 2019 at 0:43
  • I think the term is Trojan Horse, or simply Trojan.
    – ArTs
    Commented Feb 9, 2019 at 4:09
  • I do not understand the communication relationship between the nodes from your description. You have a web server, devices and users. Who is requesting from whom and where are they all? A picture may help. Commented Feb 9, 2019 at 7:29
  • @ArTs, it's not malware. :P The software performs very specific functions and must be configured locally and pointed to the central server.
    – duckbrain
    Commented Feb 13, 2019 at 18:36

2 Answers 2


I don't know if there is an official or defacto term for this but some possible descriptive options are:

  • Delegate
  • Delegate agent
  • Proxy delegate
  • Attorney
  • Thanks for the suggestions. I hadn't considered the use of "delegate". I realize there may not be an answer to my question, marking this as the accepted answer unless someone can find a reference to a term that's used widely elsewhere.
    – duckbrain
    Commented Feb 13, 2019 at 20:48

I feel like the term 'worker' applies in your case, even though (to the best of my knowledge) it's generally used to describe software sub-tasks.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.