Skip to main content
Software Engineering

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

Required fields*

A simple definition of client-server [duplicate]

I'm looking for a simple definition of the concept of "client-server"

I'd like something similar to this definition of state.

... That "thing/information" that you need to remember is called "state".

Edit - This isn't a homework question (nor am I a student). My goal is to come up with a compact way of explaining REST to average developers. I didn't want to prejudice the response though.

Answer*

Draft saved
Draft discarded
Cancel
11
  • is it possible that server can contact/make request to client first? is it always uni-directional? client asking for resources and server providing them? Commented Feb 27, 2013 at 8:50
  • 6
    No -- the client/server relationship is asymmetrical. Servers sit there listening for connections; clients initiate connections and make requests. The term for a symmetrical relationship, in which either machine can connect to the other and either can make requests of the other, is peer to peer. Commented Feb 27, 2013 at 8:57
  • 1
    I should say, though, that in some cases the client and server can agree to swap roles. For example, we usually think of SMTP as a client/server protocol, but it includes a TURN command which lets the message sender become the receiver and vice versa. Also, there's nothing to prevent a server from being a client of another server. Commented Feb 27, 2013 at 9:08
  • 3
    @RodrickChapman If you want to make the definition above more general, simply change networked computer and machine to entity, object, process, or whatever suits you. The phrase client/server is used adjectivally to describe a certain kind of relationship; the nature of the actors isn't all that important. Commented Feb 27, 2013 at 9:37
  • 1
    +1 a server provides a service. It's been years since I programmed in it but IIRC the X Window system treated the end-user workstation/x-terminal as 'the server' and the Sun server as 'the client'. why? the workstation 'provided the graphic/display services' and the Sun server was the client that was requesting the graphics services so images & windows were drawn and displayed. Commented Feb 27, 2013 at 15:29

AltStyle によって変換されたページ (->オリジナル) /