There are 6 questions in this paper. Each question carries 25 marks. You should answer any 4 of the questions. Question 1 [25 marks] You are a LAN manager. You have a Web application proxy installed as your firewall. All LAN users have access to Web servers outside the firewall on the Internet. The LAN inside the firewall is not accessible at all to Internet users outside the firewall. You have been asked to install a Web caching proxy as shown in the configuration below. Answer the following questions about your network services. (a) The Web caching proxy and the application proxy firewall are both called proxies . What function does the cache and firewall share that they are both called proxies? Define the term proxy. [3] (b) What is the purpose of the firewall? What benefits does it provide to your LAN users? [2] (c) Are LAN users likely to see improved or decreased performance when accessing Web documents from the Internet due to the firewall? Explain. [4] (d) Name two reasons the LAN user may experience faster overall response time when accessing Web pages due to the Web caching proxy? Only consider factors that directly affects the performance LAN users experiences. [4] (e) What type of usage patterns would boost the performance of the cache? [4] (f) The illustration shows the web caching proxy on the 141.143.4 subnet. Is this the best location for the cache, or should it be on the 141.142.22 network? Explain. [3] (g) What documents cannot be cached by a Web caching proxy? Why? Explain. [5] Question 2 (a) [25 marks] You manage a web service, www.worldpeace.org which consists of a set of web pages of news articles and current events. The web service consists of one computing platform on one LAN. The web service is overloaded with requests. You are instructed to expand ( scale ) the web service to use 3 computing platforms to handle the user load. Draw a diagram that demonstrates your solution to scaling the web service. Name tools and algorithms you would use to make the management of the service easier. Describe, briefly, how your solution works. [10] The Open University of Hong Kong (b) Cable modem and broadband (DSL) Internet Service Providers often advertise the network bandwidth of their service. The customer typically sees much lower network speeds than the advertiser claims. Describe two characteristics of the network that lead to slower network performance that the advertiser claims. [7] You are a software designer for a company creating a new search engine. Your assignment is to design the "gatherer", "robot" or "web crawler" component. Name 6 important issues you must consider in designing this component. [8] (c) Question 3 You manage your company "Intranet" and web services. Each user has a personal computer on the Ethernet Intranet LAN. You have a considerable amount of control over the software and software practices of your user community: No one can use the company Intranet without you first creating a user account, granting the user permission to access the web services, and installing any specialized software you may require. You select and maintain the authentication system including management of all authentication data for the user community. You manage these operations through a central LAN server. You must design a cryptosystem for the Intranet according to your company's security requirements. Answer the following system design questions. Your answer should be stated in terms of types of cryptographic algorithms or combinations of cryptographic algorithms NOT in terms of specific commercial products or the SSL protocol. (a) (b) The cryptosystem must provide Confidentiality Each Intranet user typically uploads and downloads large volumes of data across the Intranet web service. What type of encryption method will provide fast data transfer in this environment? [4] Will RC4 fulfill this requirement? [2] The cryptosystem must provide Secure Key Management Your Intranet LAN uses IP and is therefore considered an insecure network. What specific characteristics of an IP network make it vulnerable to an attack during distribution of cryptographic keys? What specific attack is your network vulnerable to? [3] Explain how the addition of only a simple password authentication method solves the key distribution problem of a private key in your environment. [3] Why does this solution work in your environment but does not work for an Internet web server servicing the entire Internet community? [2] What is the most common key exchange protocol used on the Internet? (c) (d) [2] The cryptosystem must provide Secure Key Storage Keys must have enhanced security beyond storing them in a cleartext file on each user's PC. Describe two possible options to solving this problem. [4] The cryptosystem must provide Message Integrity Describe why using a hashing algorithm alone is not enough to fulfill the message integrity requirement in an insecure network environment. [3] You want to use a hashing algorithm + private key cryptography to fulfill the message integrity requirement. What is this combination of cryptographic algorithms called? [2] MT834 (2001-0) Page 2 of 7 Question 4 (i) Review the structure of the following HTML documents: : top.html: <FRAMESET COLS="50%,50%"> <FRAME NAME="f1" SRC="./message.html" TITLE="frame1"> <FRAME NAME="f2" SRC="./map.html" TITLE="frame2"> </FRAMESET> message.html: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN" "http://www.w3.org/TR/HTML32.dtd"> <HTML> <HEAD> <TITLE>Message from NTP CEO </TITLE> </HEAD> <BODY> <p> <H1> Message from the Director </H1> <p> <IMG SRC="./ntp.gif"> <APPLET CODE="Lake" width=80 height=160> <param name="image" value="logo.jpg"> </APPLET> <br> <A HREF="http://ntp.com"> NTP Home Page </A> <br>The company mission is: <ul> <li> creating products </li> <li> customer satisfaction <li> productivity </li> </ul> <br> <TABLE BORDER=1> <TR><TH>Staff Phone Numbers</TH></TR> <TR><TD> reception X 2368 </TD> </TR> <TR><TD> copy room X 4867 </TD> </TR> </TABLE> </BODY> </HTML> map.html: <HTML> <HEAD> <TITLE> Sample</TITLE> </HEAD> <BODY> <IMG SRC="tel.gif" USEMAP="#tel"> <MAP NAME="tel"> <AREA HREF="one.html" SHAPE=RECT COORDS="0,0 110,75"> <AREA HREF="two.html" SHAPE=RECT COORDS="0,76 110,150"> </MAP> MT834 (2001-0) Page 3 of 7 </BODY> </HTML> Opening top.html with a web browser generates the browser image shown below: Are any of the HTML tags in these documents deprecated in HTML 4.0? If so, state why the element is deprecated and what the suggested replacement tag is in HTML 4.0. Indicate whether the deprecated HTML tag is still in widespread use and why. [13] (ii) (iii) Compare and contrast how CGI programs work versus how scripting languages work on the Web server. State the advantages/disadvantages of using each approach. [7] The biggest threat to a web browser is the unknowing executing of foreign programs. Javascript is foreign program. Why isn't Javascript considered to be a huge security risk? What is the big limitation of using scripting languages on the Web browser ( this is the reason why many developers only use scripting languages on the Web client for nonessential tasks)? What is the HTML tag for embedding a client-side scripting program in a HTML page? [5] Question 5 (i) You manage an internal LAN for an engineering company that uses computer aided design (CAD). The CAD system stores images in .cad files. There is a CAD display program that reads and displays .cad images files. Is it possible to configure your web server to serve the .cad image files? Can you configure your web browser to invoke the MT834 (2001-0) Page 4 of 7 (ii) (iii) CAD viewer when a .cad file is sent by the web server? Describe the HTTP protocol, HTTP Header Fields, or other software standards used by the Web that permit or deny you from configuring your service in this way. [7] The Internet is a wide variety of computers and networks joined together by the IP protocol. Name two characteristics of the IP network protocol that made the Internet different from other networks of it's time. [2] You must create a form for a Perl CGI script that expects as input: o o an ID value a CODE value The CODE value should always be "weeble". The ID value that will be input by the sample user is "me". You have created the following forms to fulfill these requirements. For each form: o o o Draw the EMPTY form as displayed by a web browser ( The user has not filled in the values yet) State the value of the QUERYSTRING and PATHINFO environment variables of the doit program after it receives input from the form. If you think the form will not send input to the doit program, please state the reason why. [12] MT834 (2001-0) Page 5 of 7 (iv) Fill in True or False in the following table: [4] True or False Statement All Web browser and Web server software must implement a core set of features in the HTTP protocol Virtual Host and Load Balancing techniques scale a web service by spreading the load over multiple servers. A web server processes user requests one at a time New network types can join the Internet if they can transmit messages according to the rules of the TCP/IP protocol. Question 6 (i) You are conducting performance measurements for Internet services on two computing platforms: A & B. When tested with a FTP service System A performs much better System B. When tested with a HTTP service System B performs much better than System A. o o What features of TCP/IP could cause this variation? What features of TCP/IP make it a poor choice as a network protocol for HTTP [5] (ii) Web server software can be implemented according to three different process models. o o Name these three models and briefly describe how each model handles a new HTTP service request. [6] Order the three process models according to the amount of operating system overhead each model creates in handling a HTTP service request for a static HTML document. Fill in the following: Least Overhead: Moderate Overhead: Most Overhead: o (iii) [3] Performance measurement is based on system specifics. Generalizations are not true 100 % of the time. Name a specific system or set of conditions that could possibly cause the "Least Overhead" process model to become the "Most Overhead" process model. [3] You have a friend Ting-hao Yong who owns a business in Beijing. You cannot remember the name of his business so you use Google.com search engine to try to find the web page of his business. o o MT834 (2001-0) What search phrase that includes your friend's name and city should you use? Express the search phrase as a boolean expression. [1] Google.com returns many "hits" or answers to your query. The first answer at the top of the page is a URL on the yahoo.com web site that points to your Ting-hao's home page. How and why did Google select this "hit" ( answer ) to be the best match? [3] Page 6 of 7 o MT834 (2001-0) Draw the index entries for Beijing and Ting-hao in Google's index structure. Page 7 of 7 [4]