Implementing Client Server Communication Model


Implementing Client Server Communication Model

The  client–server  characteristic  describes  the  relationship  of  co-operating  programs  in  an  application. The  server  component  provides  a  function  or  service  to  one  or  many  clients,  which  initiate  requests  for  such  services.  The  model  assigns  one  of  two  roles  to  the  computers  in  a  network:  Client  or  server.  A  server  is  a  computer  system  that  selectively  shares  its  resources;  a  client  is  a  computer  or  computer  program  that  initiates  contact  with  a  server  in  order  to  make  use  of  a  resource.  Data,  CPUs,  printers,  and  data  storage  devices  are  some  examples  of  resources.

This  sharing  of  computer  resources  is  called  time-sharing,  because  it  allows  multiple  applications  to  use  the  computer's  resources  at  the  same  time.Clients  and  servers  exchange  messages  in  a  request-response  messaging  pattern:  The  client  sends  a  request,  and  the  server  returns  a  response.  To  communicate,  the  computers  must  have  a  common  language,  and  they  must  follow  rules  so  that  both  the  client  and  the  server  know  what  to  expect.  The  language  and  rules  of  communication  are  defined  in  a  communications  protocol.  All  client-server  protocols  operate  in  the  application  layer.

 Whether  a  computer  is  a  client,  a  server,  or  both,  it  can  serve  multiple  functions.  For  example,  a  single  computer  can  run  web  server  and  file  server  software  at  the  same  time  to  serve  different  data  to  clients  making  different  kinds  of  requests.  Client  software  can  also  communicate  with  server  software  on  the  same  computer.  Communication  between  servers,  such  as  to  synchronize  data,  is  sometimes  called  inter-server  or  server-to-server  communication.




Comments