Client Server Relationship
The key characteristic of client/server systems is that the client sends a request to a server, and the server responds by carrying out a function, such as sending information back to the client.
The term server refers to a host running a software application that provides information or services to other hosts connected to the network. A well-known example of an application is a web server
There are millions of servers connected to the Internet, providing services such as web sites, email, financial transactions, music downloads, etc. A factor that is crucial to enabling these complex interactions to function is that they all use agreed standards and protocols.
To request and view a web page, a person uses a device that is running web client software. A client is the name given to a computer application that someone uses to access information held on a server. A web browser is a good example of a client.
Role of Protocol in Client Server Communication
A web server and a web client use specific protocols and standards in the process of exchanging information to ensure that the messages are received and understood.
Types of protocol
Hypertext Transfer Protocol (HTTP) governs the way that a web server and a web client interact. HTTP defines the format of the requests and responses exchanged between the client and server. HTTP relies on other protocols to govern how the messages are transported between client and server
Transmission Control Protocol (TCP) is the transport protocol that manages the individual conversations between web servers and web clients. TCP formats the HTTP messages into segments to be sent to the destination host. It also provides flow control and acknowledgement of packets exchanged between hosts.
The most common internetwork protocol is Internet Protocol (IP). IP is responsible for taking the formatted segments from TCP, assigning the logical addressing, and encapsulating them into packets for routing to the destination host.
Network Access Protocols
Ethernet is the most commonly used protocol for local networks. Network access protocols perform two primary functions, data link management and physical network transmissions.
Data link management protocols take the packets from IP and encapsulate them into the appropriate frame format for the local network. These protocols assign the physical addresses to the frames and prepare them to be transmitted over the network.
The standards and protocols for the physical media govern how the bits are represented on the media, how the signals are sent over the media, and how they are interpreted by the receiving hosts.
TCP and UDP Transport Protocol
Each service available over the network has its own application protocols that are implemented in the server and client software. In addition to the application protocols, all of the common Internet services use Internet Protocol (IP), to address and route messages between source and destination hosts.
Transmission Control Protocol
When an application requires acknowledgment that a message is delivered, it uses TCP. This is similar to sending a registered letter through the postal system, where the recipient must sign for the letter to acknowledge its receipt
TCP breaks up a message into small pieces known as segments. The segments are numbered in sequence and passed to IP process for assembly into packets
FTP and HTTP are examples of applications that use TCP to ensure delivery of data.
User Datagram Protocol
UDP is a ‘best effort’ delivery system that does not require acknowledgment of receipt. This is similar to sending a standard letter through the postal system. It is not guaranteed that the letter is received, but the chances are good.
UDP is preferable with applications such as streaming audio, video and voice over IP (VoIP). An example of an application that uses UDP is Internet radio.
TCP/IP Port Number
An example of an application that uses UDP is Internet radio.>When a message is delivered using either TCP or UDP, the protocols and services requested are identified by a port number. A port is a numeric identifier within each segment that is used to keep track of specific conversations and destination services requested
The client places a destination port number in the segment to tell the destination server what service is being requested.
When a client specifies Port 80 in the destination port, the server that receives the message knows that web services are being requested. A server can offer more than one service simultaneously.
A server can offer web services on Port 80 at the same time that it offers FTP connection establishment on Port 21.
The source port number is randomly generated by the sending device to identify a conversation between two devices. This allows multiple conversations to occur simultaneously.
multiple devices can request HTTP service from a web server at the s ame time. The separate conversations are tracked based on the source ports. .
The source and destination ports are placed within the segment. The segments are t hen encapsulated within an IP packet. The IP packet contains the IP address of the source and destination