Problem:

There is a common storage disk (CDS) interconnected to all the clients in a system.

When first client pings server.
the server asks the first client to write a random file into the CDS,read it back and verify if its the same.
Then send to server the MD5 of the random file.

Meanwhile if any other client pings the server, it is asked by server to verify if the MD5 returned by client 1
is correct, once present client verifies( by comparing MD5 given by server and reading the message written by client 1 from CDS and MD5ing it),
server asks this client to write a random file into CDS,read it back..verify if the file contents remains the same and then submit the MD5 of this file to server..

so on.. with any client pinging the server, the above tasks are assigned to them in the same order.

Q: If server should direct the client to do a particular task, it should know what the status of the client (wat status means, is, if the client is yet to verify the x-clients MD5 or do read/verify the file. for this I would need a structure of client's status to be passed thro socket )

Q. Threads wouldnt be suitable i believe, since memory needs not to be shared, IO::Select wouldnt be useful (since it listens only one client at a time, and misses to Table the list of other clients pinging the server), proxy server,( how would server communicate a common space like table).

Thanks and real sry for the painfully long post :(

In reply to Single server-multiple clients by hari9

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.