Even in pure (and poor, very limiting :-)) client-server model, server nearly always sends data to client: client sends request and then the server sends response. This pair, client + server, is absolutely symmetrical in terms of direction of the data flow. It is asymmetrical in terms of connection: it is performed by the client, which is connected to the server listening for the connection.
I don't know what samples should be shown here; this is all pretty much trivial.
For some ideas, please see my past answers:
an amateur question in socket programming[
^],
Multple clients from same port Number[
^].
For some background, please read:
http://en.wikipedia.org/wiki/Client-server[
^],
http://en.wikipedia.org/wiki/Pull_technology[
^],
http://en.wikipedia.org/wiki/Push_technology[
^].
The problems of limitations of client-server are very serious, but they are not like the problem of the direction of data flow. Please see my past answer where I try to explain it all:
Application 'dashboard' for website accounts[
^].
—SA