...
The maximum number of remote processes that can run in parallel should be considered when setting the range of the ports to be opened below 59999. It is also important to consider that operating systems generally take around two minutes before they finally release a port and allow it to be used to make a new TCP connection to be made.
<mscgen>
// Remote configuration
msc {
No Format |
---|
width1. "800";
|
client label"Client JobScheduler",remote labeh1. "Remote JobScheduler";
No Format |
---|
client box client [label "OP: Select an outgoing port (given by OS).", textbgcolouh1. "#ff7f7f"];
client box client [label "IP: Select an incomming port (h1. 59999)", textbgcolour"#ff7f7f"];
clienth1. > remote [label "TCP connection from OP to host:port from process_class.", linecolouh1. "#800000"];
client >> remote [label "Send the IP port to receive the answer.", linecolouh1. "silver"];
client >> remote [label "Send command to start the remote job.", linecolouh1. "silver"];
client box client [label"Waiting for response", textbgcolouh1. "#7f7fff", textcolour"#FFFFFF"];
remoteh1. > remote [label "Start a separate process for the task."];
remote box remote [labelh1. "OPR: Select an outgoing port (given by OS).", textbgcolour"#ff7f7f"];
client h1. remote [label "TCP connection from OPR to OP", linecolouh1. "#800000"];
client << remote [label "Confirm the start of the task.", linecolouh1. "silver"];
client box client [label"Waiting for end of task.", textbgcolouh1. "#7f7fff", textcolour"#FFFFFF"];
remote box remote [labeh1. "Execute the task.", textbgcolour"#7fff7f"];
client << remote [labelh1. "Confirm the end of the task.", linecolour"silver"];
|
}
</mscgen>