December 1998
NI222: NETWORKS AND THE INTERNET

QUESTION 4

Total Marks: 20 Marks

Click here to access other questions

SUGGESTED SOLUTIONS
Solutions and allocated marks are indicated in green.
Return to Question 4

 

(a) Explain the Remote Procedure Call (RPC) approach to designing a network application. [4]
Is similar to a procedure call in a programming language (1 mark). The call is made to a procedure that may not reside on the same machine as the caller (1 mark). The details of the network communication are hidden from the user (1 mark). This technique is widely used when extending a conventional programming environment with distributed programming facilities (1 mark).

 

(b) Distinguish between Compression and Encryption. How are they related? [6]
Compression: Compression is a process of transforming the representation of the data so that it occupies less space and is thus cheaper to transmit (1 mark). For most applications the compression must be reversible, so that the original data can be recovered (1 mark).

Encryption: Encryption is a process of converting the plain text into ciphertext using a standard encryption algorithm to maintain the confidentiality over the communication lines during the data transmission (1 mark). Encryption is matched by decryption, in which the original message is recovered, hopefully by the intended recipient (1 mark).

Two from :

Both are (generally) reversible transformations of data (1 mark). If the compression scheme is not known to third parties, it may offer a crude form of encryption (1 mark). Since encryption is computationally expensive, it is useful to compress data before encrypting it (1 mark).

 

(c) Using diagrams where appropriate, explain the concepts of upward and downward multiplexing. What are the cost-performance trade-offs involved? [6]
Upward Multiplexing: A transport layer can reduce network costs by having several transport layer connections share the same network layer connection. This is known as upward multiplexing (1 mark). This is essential in general-purpose computing, otherwise the cost would be enormous. There is potential performance trade-off if too many transport layer connections overwhelm the network connection (1 mark).

(1 mark) for diagram.

Downward Multiplexing: If the transport user needs a high bandwidth and each network connection is of limited bandwidth, then the transport layer connection can be spread over several network layer connections (1 mark). This may give excellent performance, at considerable cost (1 mark).

(1 mark) for diagram.

 

(d) List and explain two limitations of TCP. [4]
Any two from:

TCP data and control messages have the same message header structure (1 mark), this makes the percentage overhead very high when there is a small amount of data in each message, e.g. in interactive text-based applications (1 mark).

The TCP checksum mechanism is limited (1 mark). Errors which reach this layer may be sufficiently subtle to escape error detection with this simple scheme (1 mark).

Some quality of service parameters are not adjustable at the TCP layer (1 mark). For example, it is not possible to ensure ‘real time’ transmission, because the URG bit in the TCP header does not affect the IP layer flow control (1 mark).