Similar documents
Transport Layer Protocols

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

ICOM : Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM

Internet Concepts. What is a Network?

Chapter 3. Internet Applications and Network Programming

Top-Down Network Design

File Transfer And Access (FTP, TFTP, NFS) Chapter 25 By: Sang Oh Spencer Kam Atsuya Takagi

Network Simulation Traffic, Paths and Impairment

Firewall Introduction Several Types of Firewall. Cisco PIX Firewall

Computer Networks CCNA Module 1

SSL VPN Technology White Paper

Middleware and Distributed Systems. System Models. Dr. Martin v. Löwis. Freitag, 14. Oktober 11

Transport and Network Layer

Computer Networks. Chapter 5 Transport Protocols

A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection.

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

Lecture 23: Firewalls

Load Balancing. Final Network Exam LSNAT. Sommaire. How works a "traditional" NAT? Un article de Le wiki des TPs RSM.

The TCP/IP Reference Model

Connecting to and Setting Up a Network

[Prof. Rupesh G Vaishnav] Page 1

Sage 300 ERP Online. Mac Resource Guide. (Formerly Sage ERP Accpac Online) Updated June 1, Page 1

EE4367 Telecom. Switching & Transmission. Prof. Murat Torlak

Sage ERP Accpac Online

Network Programming TDC 561

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Protocols. Packets. What's in an IP packet

Ethernet. Ethernet. Network Devices

LESSON Networking Fundamentals. Understand TCP/IP

Protocols and Architecture. Protocol Architecture.

Proxy Server, Network Address Translator, Firewall. Proxy Server

Stateful Firewalls. Hank and Foo

12. Firewalls Content

Data Communication I

PART OF THE PICTURE: The TCP/IP Communications Architecture

Computer Networks Vs. Distributed Systems

Configuring and Monitoring the Client Desktop Component

COMP 361 Computer Communications Networks. Fall Semester Midterm Examination

Classification of Firewalls and Proxies

Bandwidth Aggregation, Teaming and Bonding

First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring

MailEnable Scalability White Paper Version 1.2

Firewall Design Principles Firewall Characteristics Types of Firewalls

TCP Offload Engines. As network interconnect speeds advance to Gigabit. Introduction to

Transport Layer. Chapter 3.4. Think about

Solution of Exercise Sheet 5

Architecture and Performance of the Internet

Computer Networks. Lecture 7: Application layer: FTP and HTTP. Marcin Bieńkowski. Institute of Computer Science University of Wrocław

CSIS CSIS 3230 Spring Networking, its all about the apps! Apps on the Edge. Application Architectures. Pure P2P Architecture

Communications and Computer Networks

Limi Kalita / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 5 (3), 2014, Socket Programming

Configuring Health Monitoring

CS 356 Lecture 19 and 20 Firewalls and Intrusion Prevention. Spring 2013

Module 1. Introduction. Version 2 CSE IIT, Kharagpur

UPPER LAYER SWITCHING

Network File System (NFS) Pradipta De

SIP, Session Initiation Protocol used in VoIP

SY system so that an unauthorized individual can take over an authorized session, or to disrupt service to authorized users.

Overview of TCP/IP. TCP/IP and Internet

ΕΠΛ 674: Εργαστήριο 5 Firewalls

M3-R3: INTERNET AND WEB DESIGN

COLO: COarse-grain LOck-stepping Virtual Machine for Non-stop Service

Improved Digital Media Delivery with Telestream HyperLaunch

Measuring IP Performance. Geoff Huston Telstra

Introduction to Computer Security Benoit Donnet Academic Year

Public-Root Name Server Operational Requirements

Proxies. Chapter 4. Network & Security Gildas Avoine

Mathatma Gandhi University

Core Syllabus. Version 2.6 C OPERATE KNOWLEDGE AREA: OPERATION AND SUPPORT OF INFORMATION SYSTEMS. June 2006

Measurement of the Usage of Several Secure Internet Protocols from Internet Traces

EE 7376: Introduction to Computer Networks. Homework #3: Network Security, , Web, DNS, and Network Management. Maximum Points: 60

Cisco Configuring Commonly Used IP ACLs

Operating System Concepts. Operating System 資 訊 工 程 學 系 袁 賢 銘 老 師

SPAMfighter SMTP Anti Spam Server

Indian Institute of Technology Kharagpur. TCP/IP Part I. Prof Indranil Sengupta Computer Science and Engineering Indian Institute of Technology

Request For Comments: 1350 STD: 33 July 1992 Obsoletes: RFC 783

Using IPM to Measure Network Performance

VPN over Satellite A comparison of approaches by Richard McKinney and Russell Lambert

Fig : Packet Filtering

Computer Networks - CS132/EECS148 - Spring

Chapter 5. Transport layer protocols

Evolution of the WWW. Communication in the WWW. WWW, HTML, URL and HTTP. HTTP Abstract Message Format. The Client/Server model is used:

CSE 123b Communications Software

INF3510 Information Security University of Oslo Spring Lecture 9 Communication Security. Audun Jøsang

DATA COMMUNICATOIN NETWORKING

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

Firewalls. Firewalls. Idea: separate local network from the Internet 2/24/15. Intranet DMZ. Trusted hosts and networks. Firewall.

Objectives of Lecture. Network Architecture. Protocols. Contents

GoGrid Implement.com Configuring a SQL Server 2012 AlwaysOn Cluster

The OSI model has seven layers. The principles that were applied to arrive at the seven layers can be briefly summarized as follows:

ΕΠΛ 475: Εργαστήριο 9 Firewalls Τοίχοι πυρασφάλειας. University of Cyprus Department of Computer Science

Device Log Export ENGLISH

Computer Networks and the Internet

Transcription:

Albert Ludwigs University Freiburg Department of Computer Science Prof. Dr. Stefan Leue and Corina Apachite Distributed Systems - WS 2001/2002 Assignment 1 - Solutions Question 1.1 Give vetypes of hardware resources and ve types of data or software resources that can usefully be shared. Give examples of their sharing as it occurs in distributed systems. (1 point) Answer 1.1 Examples of hardware resources that can be usefully be shared, and examples of their sharing (0.5p): network capacity transmission of data (packet transmission ) is done using the same circuit, this means, many communication channels share the same underlying circuit screen network window systems (X-Windows) allow processes in remote computers to update the content of the local windows. disk le server, virtual disk server memory cache server CPU servers do some computation for their clients, hence their cpu is a shared resource Examples of data/software resources that can be shared in a distributed system (0.5 p): object there are unlimited possibilities to share objects in distributed systems (for example shared whiteboard, ticket booking, etc) le le servers enable multiple clients to have read/write access to the same les web-page web servers enable client programs to have read-only access to the page content database the content of a database can be usefully shared. There are many techniques that control the concurrent access to a database. exclusive lock a system-level object provided by a lock server, enabling the coordination of accessing a special resource 1

Question 1.2 Give an example of a URL. List the main componentsofaurl,stating how their boundaries are denoted and illustrating each one from your example. To what extent is an URL location transparent?(1 point) Answer 1.2 An example of an URL (0.1p): http://tele.informatik.uni-freiburg.de/teaching/ws01/dsys/dsys-tutorial.html The main components of an URL (according to RFC 1738) are (0.7p): 1. The protocol to use, te part before the colon (in our case, Hyper Text Transfer Protocol, http). Another examples of protocols that may be used: mailto, ftp, telnet, wais,:::. 2. The part between == and = is the Domain name of the web server host (in our example, tele.informatik.uni-freiburg.de) 3. The rest refers to information on that host - named within the top level directory used by that Web server (this means, our resourse is located on the web directory of the host tele.informatik.uni-freiburg.de according to the path: Teaching/ws01/dsys/dsys-tutorial.html) Location transparency (0.2p): we have location transparency in that the address of a particular computer is not included. Inside our research group we can change the web service on another computer. Question 1.3 Consider a simple server that carries out clients requests without accessing other servers. Explain why it is generally not possible to set a limit on the time taken by such a server to respond to a client request. What would need be done to make the server able to execute requests within a bounded time? Is this a practical option?(2 points) Answer 1.3 We cannot send a limit for the time taken by aserver to respond a client request because the arrival of client requests is not predictible. For example we can have limits for executing a computation corresponding to a request, but we can not predict how much a request will have towait until its execution time arrives. If the server uses threads, there is not possible for the server to allocate sucient time to a particular request within any given time limit. If the requests are carryed out one at a time, they may wait in the queue for an unlimited amount oftime.(0.6p) We can imagine the following solution, trying to set a time limit in responding to client requests (0.7p): 2

we can limit the number of clients to suit the server capacity to deal with many clients, we should use a server with a higher capacity (many processors...) we can replicate the service. The practicability of our solutions (0.7p): setting a limit for the number of clients that are able to suit the service we oer induces the lost of some client requests. the introduction of replicas brings the problem of keeping them consistent. This requires also an amount of time that could be used for responding client requests.. Question 1.4 Consider two communication services for use in asynchronous distributed systems. In service A, messages may be lost, duplicated or delayed and checksums apply only to headers. In service B, messages may be lost, delayed or delivered too fast for the recipient to handle them, but those that are delivered arrive ordered and with the correct contents. Describe the classes of failure exhibited by each service. Classify their failures according to their eect on properties of validity and integrity. Can service B be described as a reliable communication service? (2 points) Answer 1.4 Sevice A can have (0.8p): arbitrary failures: checksums apply only to headers ) message bodies may be corrupted, duplicated messages omission failures: lost messages The lost of messages implies that we have no validity property using the service A. The corrupted and duplicated messages deny the integrity property of service A. Service B can have (0.8p): omission failures: lost messages, dropped messages. The integrity property holds but the validity property is denied by the lost of messages. So, the service B can NOT be called reliable. (0.4p) Question 1.5 Dene the integrity property of reliable communication and list all the possible threats to integrityfromusers and from systems components. What measures can be taken to ensure the integrity propertyinfaceofeachof these source of threats. (2 points) 3

Answer 1.5 The integrity property is that the message received is identical to the one sent and no messages are delivered twice. (0.4p) Threats from users (0.6p): 1. injecting bad messages 2. replaying old messages 3. modifying the messages during the transmission (this means, a bad user is altering the messages that travel between two user, A and B) Threats from the systems components (0.6p): 1. the messages may get corrupted traveling on the underlying network 2. the communication protocols may duplicate the messages Measures against user threats (0.2p): secure channels (authentication techniques, nonces). Measures against system components threats (0.2p): checksum to detect corrupted messages, sequence numbers. Remains the problem of dropped messages. Question 1.6 Compare connectionless (UDP) and connection-orriented (TCP) communication for the implementation of each of the following application-level or presentation-level protocols: 1. virtual terminal access (for example, telnet) 2. le transfer (for example, FTP) 3. user location (for example rwho, nger) 4. information browsing (for example, HTTP) 5. remote procedure call. (2 points) Answer 1.6 1. The characteristics of the virtual terminal access: long duration of session, the need of reliable communication, the unstructured character of data transmitted. These could be a reason to choose the TCP communication. (0.4p) 2. File transfer requires transmission of large amount of data. We would use UDP if the error rates are small and the messages can be large. Practical this is not the case, so the TCP is preferred. (0.4p) 4

3. For user location information, a single message is enough, so the connectionless communication is used. (0.4p) 4. Both connection-oriented and connectionless comunication can be used. Some requests imply the transfer of a big amount of data, so the TCP communication is more indicated (and used). (0.4p) 5. Remote Procedure Calls implies the sending of a small number of packets (invocation, response of the invocation) but reliability is needed (the reliability is not a characteristic of UDP communication). We can use UDP communication, but we have to assure the reliability of communication at a higher level (timeouts and re-trys). (0.4p) 5