August 1999
NI222 : NETWORKS AND THE INTERNET

QUESTION 2

Total Marks: 20 Marks

Click here to access other questions

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

(a) FTP recognizes certain file types, and treats them appropriately. Does FTP recognize MS Word documents? Explain your answer, and identify any two (other) file types recognized by FTP. [4]
No.
FTP recognises only plain text or unstructured files.
Image, ASCII, EBCDIC or Logical byte files.

 

(b) FTP uses the TCP facilities of the network later. What features of TCP make it suitable for supporting FTP? [2]
Award marks for points from the following, or similar:

It gives a connection-orientated service, with guaranteed single delivery, which is in-order.

 

(c) Discuss the security problems you might come across in using the Simple Mail Transfer Protocol (SMTP) and in using MIME. [4]
SMTP
A potential security problem comes from the way that the caller specifies a return address in the MAIL FROM command. There is no reliable way for the local machine to verify the return address, so there is no way to verify the identity of the sender.

Alternatively, the answer may discuss the Internet Worm.

MIME
Encoding in message may take the form of instructions that the receiver's Email tool will execute. The problems include the ability to mail executable programs and to mail postscript files that themselves can contain dangerous actions. This was recently demonstrated in the Melissa virus which includes a MIME-encoded macro capable of re-sending the virus to the recipient's correspondents.

 

(d) You have studied a few different approaches to designing a network application.

Identify and explain the approach used to design both the FTP and SMTP applications. Also identify another application using a similar design approach.


[4]

Both FTP and SMTP use a protocol-based design approach.

This approach includes designing a protocol primitives, data unit structure and encoding, and protocol algorithms. The applications are built on top of such a protocol, and must handle issues of presentation and synchronisation.

HTTP or SNMP are the other applications using a similar design approach.

 

(e) Explain one benefit of using the 'web-based' approach to network application design. Also explain how the Java language can help in this context, and two possible drawbacks in using Java. [6]
Web-based applications can be very flexible and user-friendly, and are also easily kept up to date because the client side can be downloaded on demand.

Java is a part-complied/interpreted language; interpreters for its bytecode exist on many platforms. This aids portability of network applications. A Java interpreter is incorporated into most modern browsers, so many small Java programs ('applets') can appear in web pages, and provide arbitrary functionality, for great flexibility in application design.

The flexibility has security implications - the Java interpreter must be careful to prevent arbitrary downloaded programs from, say, deleting files on the local disc. Java bytecode, being an interpreted language, runs quite slowly, compared to C or C++.