Unit 5

Lesson 6 - Information Flow Between Client and Server

   Information Flow and Format

In this example, the client reads a file that is stored on the server. To do this on a Windows NT network, six messages must be exchanged:

1.

Client asks server to open the file.

2.

Server informs client that the file is open.

3.

Client asks server to read the file.

4.

Server reads the file and transmits the contents to the client.

5.

Client asks server to close the file.

6.

Server informs client that the file is closed.

Client Asks Server to Open the File

The File Open Request from Client Diagram illustrates the SMB/NetBIOS/TCP/IP/Ethernet protocol stack located inside the client and server computers. The application program interfaces to the network through a series of processes, beginning with a call to SMB. SMB on the client side initiates a request to the server SMB process for file operations. When that request reaches the server side, the server's SMB process will be responsible for opening, reading, and closing a file.

File Open Request From Client

File Open Request From Client

The protocols "underneath" the SMB protocol are used for transmitting the SMB requests and responses back and forth across the network. For example, as the Network Layer protocol, IP is responsible for transmitting the request across the network. In this example, the packet does not need to go through any intermediate nodes. However, IP is still required to direct the packet to the network address of the server. The Ethernet header is responsible for transmitting the frame and frame contents to the correct NIC, which is located inside the server.

Notice the correlation between the processes in the client and server, and the frame, packet, and message and application headers. These headers are built on the sending computer station and "decapsulated" by the corresponding process on the receiving station. By the time the SMB request gets processed by the SMB software on the server, the other headers have been stripped off by the appropriate processes on the receiving node.

Server Informs Client That the File is Open

The Open Reply from Server Diagram illustrates the response from the Windows NT file server. The reply confirms that the file is on the server and has been opened by the server application.

Open Reply From Server

Open Reply From Server

Notice that the frame is essentially the same as in the previous diagram. The difference is that the frame is carrying the SMB response from the server. There will also be a difference in the destination addresses of the frame, packet, and message. The destination addresses will now indicate the NIC, IP process, and TCP process on the client because the response is going back to the client.

This diagram shows an Ethernet bus topology. However, remember that network professionals use a bus diagram to represent any shared-medium broadcast network. Thus, when you see a bus drawing, remember that the network probably uses a hub-centered star topology. In either case, a real broadcast network would contain many nodes, not just the two nodes shown on the diagram. When several nodes share the same transmission medium (hub, bus, or radio channel), each node will receive the frame transmitted between client and server, and vice versa. However, only the node with a NIC address that matches the address in the Ethernet frame header will process the information inside the frame.

Thus, to return to the Open Reply from Server Diagram, the Windows 98 client will receive the frame at its Ethernet NIC. The NIC address will match the destination address located inside the Ethernet header. The client's NIC will then remove the packet from inside the frame and pass the packet to the IP process running in the client's central processing unit (CPU).

The client's IP process will process the IP packet, first checking to make sure the destination address of the packet matches the machine's IP address. If there is a match, the IP process will pass the contents of the packet (message) to the TCP process. Information will continue to move up the protocol stack, losing protocol headers, until it arrives at the SMB process. The reply destination is SMB, which generated the initial file open request.

Client Asks Server to Read the File

Now that the file is open, the client makes a separate request to the server, asking it to read from the open file and return that information to the client. This request is shown on the Client Read Request Diagram.

Client Read Request

Client Read Request

The same processes generate protocol headers for the read request. Each header is added as the request is moved down the protocol stack until the frame exits the Windows 98 client by means of the NIC. When the request reaches the server, it is decapsulated and processed just as the open request was.

Server Reads the File and Transmits the Contents to the Client

The Server Read Reply Diagram illustrates the response from the server after it reads the file. If the file is small, only one packet may be needed to transfer the data from the server to the client. In this example, a small file is sent from the server to the client, carried within a single packet.

Server Read Reply

Server Read Reply

A large file would require a series of packets, each one identified with sequencing information. The packets would have to be reassembled on the client by the Transport Layer, before the file is passed up to the SMB process.

For example, assume the file is 3 kilobytes (KB) in size and the default packet size is 1 KB. It would take three packets to transmit the file across the network. Each packet is encapsulated within a separate frame, thus it would also take three frames to move the file across the network. At the receiving node, the client's Ethernet NIC would receive and decapsulate each frame, then pass the three packets up to the IP process. The IP process would pass each message segment to the TCP process, which would reassemble the segments into the original message. TCP would then pass the message (file) up to SMB, which would process the file.

Client Asks Server to Close the File

When the client first asked the server to open the file, the server probably locked the file to prevent other users from changing it. Thus, after the client has received the data it needs, the file must be closed so that other users can have access to the file. This close request, sent from the client to the server, is shown on the Client Close Request Diagram.

Client Close Request

Client Close Request

Server Informs Client That the File is Closed

The final frame, from the server back to the client, is illustrated on the Server Close Reply Diagram. The message confirms that the file is closed and the transaction is complete.

Server Close Reply

Server Close Reply

This completes one transaction between client and server. During this same period, the server could have been processing requests from many other clients as well. In an environment in which many clients share a server, the server is responsible for tracking each client's progress and making sure each client task is processed in order of priority.

   Activities

See the Activities and Extended Activities section in Unit 5 Lesson 6 in your textbook Introduction to Networking to test what you have learned so far.

[ Previous Section ] [ Unit Contents ] [ Summary ]