15-441: Computer Networks Homework 1

Size: px
Start display at page:

Download "15-441: Computer Networks Homework 1"

Transcription

1 15-441: Computer Networks Homework 1 Assigned: September 9 / Due: September 18 / 2002 in class. In this homework you will run various useful network tools that are available in the Sun/Solaris machines in the Andrew cluster. You can issue the commands from the command prompt. If your default path name does not include the locations of these commands, use the whereis command to find the location of the command, e.g., whereis ping. To know more about the commands, use the Unix man pages, e.g., man ping. The options and argument format may differ in different versions of Unix. You must solve the homework individually. For full credit, show your work. 1 Transmission overheads Consider sending a file of Kbytes in the following settings. Setting 1 consists of two computers A and B, each equipped with a modem that is capable of sending/receiving at 33.3 kbps. For A to send a file to B, it must first establish a dial-up connection with B, which takes 30 seconds. It can then send the file in 128-byte packets, with a one-byte checksum attached to each packet. The propagation delay of the phone line is negligible. Assume that A and B are directly connected, i.e., there are no intermediate routers. Setting 2 consists of two computers C and D, connected by an established wireless connection that can transmit at 8 kbps through a satellite, with a quarter-second (0.25 second) total propagation delay from C to D. In setting 2, files are transmitted without being split into packets. You may assume there are no errors during each transmission and you may ignore acknowledgments, i.e., consider only bits flowing from the sending computer to the receiving computer. Also note that 1 K byte = 1024 bytes and 1 kbps = 1000 bit/second and most people agree that 1 byte = 8 bits. 1. If ½, how long does it take to send the file from A to B? 2. How long does it take to send the file from C to D? 3. For, how long does it take to send the file from A to B? 4. For, how long does it take to send the file from C to D? 5. Which link is better with respect to total time? Briefly justify your answer. 2 Caching Help Harry Bovik analyze the effects of caching in the context of DNS. Our friend Harry finished setting up the DNS server for his Web site, His web site became very popular, and both his web server and DNS server became quickly overloaded. He decided to add more web servers and distribute the load among these servers. He also came up with the following scheme to distribute the load among two DNS servers ns1 and ns2. A typical query occurs as follows:

2 1. When a client makes a request for the.com name server is contacted first. It returns the name server (NS) record for ns-main.harrybovik.com along with a corresponding A record. The TTL of these records is set to 1 day. 2. The ns-main.harrybovik is then queried for the address. It tosses a coin and returns an NS record for one of ns1, ns2.harrybovik.com. 3. Finally, the host in the NS record from step 2 is contacted and it returns an address (A) for the most lightly loaded web server. The following TTLs are assigned to the different records: NS record for ns-main.harrybovik.com: 1 day. NS record for ns1,ns2.harrybovik.com: 1 day. A record for ns1,ns2.harrybovik.com: 1 day. A record for the actual web server: 1 minute. Harry s Web site is especially popular among CMU students. The CMU network administrators estimate that there is one access from CMU every 6 minutes. Each access results in the application resolving the name Assume the following: No other queries are made from CMU. All CMU clients use the same local name server. Web browsers do no do any caching of names on their own. Question: How many accesses will be made to the following name servers every DAY to resolve these queries? Fill in the table with your results and explain your calculations. Name server ROOT (.com) ns-main.harrybovik.com ns1.harrybovik.com # access/day 3 Sockets Close semantics: Network protocols are typically very specific about which party first closes the network connection. Some application protocols include primitives to indicate the end of connection. However, the sockets API allows applications to specify the end of connection through the close() system call, and various application protocols rely on this feature. For example, in HTTP 1.0, the server calls close() to indicate to the client that it has finished transmitting a file. In general, when an application is finished with a socket, it calls close(), passing the descriptor for the socket that it no longer needs. The close() system call tells the underlying protocol stack to initiate any actions required to shut down communications and deallocate any resources associated with the socket. To answer the questions below, you will need to carefully read the UNIX man pages for the following system calls: send(), shutdown(), socket(), close(), ip, setsockopt() and getsockopt(), among others. The socket close semantics are also explained in [1, 2]. For the following questions, assume that an application is using a SOCK STREAM type socket (i.e., TCP). See the fragment of source code below. 2

3 int send_data(char* buf, size_t size, char* ip_addr, u_short port) struct sockaddr_in peer_addr; /* peer s internet address */ int to_send = size; /* size of the data to send */ int total_sent = 0; /* total number of bytes sent */ int sent = 0; int sd = socket(pf_inet, SOCK_STREAM, IPPROTO_TCP); /* initialize peer s address struct */ memset(&peer_addr, 0, sizeof(peer_addr)); peer_addr.sin_family = AF_INET; peer_addr.sin_addr.s_addr = inet_addr(ip_addr); peer_addr.sin_port = htons(port); if (sd < 0) die_with_error("socket() failed"); if (connect(sd, (struct sockaddr*)peer_addr, sizeof(peer_addr)) < 0) die_with_error("connect() failed"); /* send loop */ while (total_sent < to_send && sent >= 0) sent = send(sd, buff + total_sent, to_send - total_sent, 0); if (send > 0) total_sent += sent; else die_with_error("send(...) failed"); close(sd); return total_sent; 1. In the program above, assume the send() call returns with no error. Where is the data after the send() call returns? In other words, What assumptions can the programmer make after send() returns? 2. Again, assume send() returns with no error. Then the program calls close(), which returns immediately with no error. What assumption can the programmer make about the data sent? Is there any guarantee that the data reached the other end point of the connection? 3. If your answer to the previous question is no, is there a mechanism, other than application level confirmation, to be sure that the data reached the other end point when close() returns? 4. The connect() call establishes a duplex (i.e., two-way) communication channel with the other party. Now suppose that in the program above, after completing the send loop we want to be able to notify the other party that we are done sending the data and still be able to receive data from the other party on the same socket. How can we notify the other party that we are done sending data without using an application-level mechanism? 4 HTTP persistent connections The HTTP 1.1 standard defines, and encourages, the use of persistent connections. With persistent connections the client (i.e., Web browser) opens Ò connections and requests all the objects (e.g., an image) of a page through these connections as opposed to opening a new connection for each object in the page. Typically, Ò. 1. Why is it difficult to implement persistent connections for CGI scripts and dynamic content in general? 3

4 2. Suppose you are downloading a page with Ñ large objects, ÑÒ, and a large number of small objects. The large objects appear first in the page and the client requests the objects in the order it finds them in the page. What problem does the persistent connections scheme pose in this situation? 3. Describe a simple client-side (i.e, in the browser) solution to avoid this problem. 5 telnet The telnet command is used to communicate with another host using the TELNET protocol. The TELNET protocol supports a virtual terminal and remote login service. Telnet is also an useful tool to test and debug services that use ASCII based protocols (e.g., HTTP, SMTP, FTP, etc). With telnet you can open a TCP connection to the port where the server is listening to and type in the corresponding protocol sequences or commands. To establish a session to a port other than the default TELNET port (i.e., 23), specify the port number after the host name of the machine you want to connect to. For example, to connect to the school s web server type: telnet 80 Question: Use telnet to find the HTTP version and server-type of the following sites: Site HTTP version Server type Alternatively, you could use a tool like netcat (nc). Unfortunately, netcat is not available in the Unix Andrew machines, for more information on netcat visit: 6 ifconfig ifconfig is used to configure the network interfaces. If no arguments are given, ifconfig displays the status of the currently active interfaces in some operating systems, in others it displays a help message. If a single interface argument is given, it displays the status of the given interface only. If a single -a argument is given, it displays the status of all interfaces, even those that are down. Question: Log on to unix4.andrew.cmu.edu, this is a Solaris machine. Run ifconfig -a. 1. How many network interfaces does ifconfig -a report? 2. What are the names of those interfaces? 3. What are the IP addresses of those interfaces? 7 nslookup The nslookup command is a program that is used to query Internet domain name servers (DNS). DNS is a distributed database that provides mappings between domain names and IP addresses. Use man nslookup to obtain more information about nslookup. Other tools to query DNS databases are dig and hosts. dig is a replacement tool for nslookup. hosts is a simpler tool to query the DNS databases. Refer to their respective man pages for information on how to use these tools. The following questions can be answered using either nslookup, dig or hosts. Log onto any UNIX Andrew machine and enter the command nslookup (If you are not sure of the path for this command, just type whereis nslookup ). The program will respond with the name of the name server it knows about and its IP address. The list of name servers used by the UNIX machine can usually be found by looking at the file /etc/resolve.conf. 4

5 1. Enter ux9.sp.cs.cmu.edu at the prompt. What is the IP address of ux9? 2. What is another name for the machine www-2.cs.cmu.edu? 3. How many IP addresses does www-2.cs.cmu.edu have? 4. List the IP addresses for www-2.cs.cmu.edu. 5. What does it mean that www-2.cs.cmu.edu has more than one address? 6. DNS also provides reverses mappings. What is the domain name for ? 7. What are the names and IP addresses of the name servers in the andrew.cmu.edu domain? (Hint: you can change the record type of the query using the command set type=ns to tell nslookup that you want information on name servers). 8. When you send mail to which machine does the mail go to? 9. What are the machines used to process mail sent to 10. It is possible to query the default name server to ask it to display all the records it contains for a particular domain using the ls command. At the nslookup prompt, enter ls cs.cmu.edu. Approximately how many DNS entries (i.e., registered machines) are there in the cs.cmu.edu domain? (Hint: It is possible to redirect the output of the nslookup ls command by typing ls cs.cmu.edu > filename. Warning: For no good reason, when you redirect the output there must be a space after the character. That is, you must type ls... > filename and not ls... >file. Also, use the Unix command wc to count the number of lines in your output). 11. How many of the domain names from the previous question are Linux machines? (Hint: you need the HINFO records. Also, use grep). 8 dig The Andrew Solaris machines provide a program, dig, that also allows you to query DNS servers. For the purposes of this question, you should use the following format to invoke dig: dig <record-type> <domain-name> where <name.of.dns.server> is the host name of the DNS server you wish to query such as A.ROOT-SERVERS.NET. <record-type> is the type of DNS record you wish to retrieve, such as ANY, MX, HINFO, A,orSOA. <domain-name> is the name of the host or domain you seek information on. The DNS is a distributed architecture that uses hierarchical delegation. At the top of the system are the root name servers, who know which DNS server is responsible for each second-level domain (such as CMU.EDU). If you send a root server a query for a particular machine, you will receive a reply listing the servers that have been delegated authority for that machine s second-level domain. It is common for a large domain such as CMU.EDU to further delegate to departmental or workgroup DNS servers, which you discover by querying the second level servers. In order to discover the chain of delegation in use at AKAMAI, run a series of NS queries for A212G.AKAMAI.NET. You may wish to start with any of the root servers, and you should continue your sequence of queries until you stop getting new delegations (in some domains, this is indicated by a DNS server returning a delegation pointing to itself, and in other domains this is indicated by a DNS server returning a SOA record instead). The delegation chain for AOL.COM is shown in Figure 1. This was produced by running the following commands: 5

6 Server Queried B.ROOT-SERVERS.NET A.GTLD-SERVERS.NET DNS-01.NS.AOL.COM NS delegates to A.GTLD-SERVERS.NET DNS-01.NS.AOL.COM, DNS-02.NS.AOL.COM DNS-01.NS.AOL.COM, DNS-02.NS.AOL.COM Figure 1: Delegation chain for AOL.COM. dig NS aol.com dig NS aol.com dig NS aol.com Question: Generate the delegation chain for A212G.AKAMAI.NET. Fill in the table with your results. Each NS query will typically return two or more answers: choose among them at random. If you query a server and get a timeout, choose an alternate server. Server Queried NS delegates to 9 traceroute The program traceroute allows you to find out the path (i.e., sequence of routers) that a packet will follow to a specific destination. The routers along the path are often identified by name. For more information check traceroute s man page. You will be using traceroute again in a future homework. Question: use traceroute to find the number of hops from unix4.andrew.cmu.edu to the following destinations: Destination # of hops 10 ping Unix ping utility sends ICMP (Internet Control Message Protocol) ECHO REQUEST packet to some network host and shows information about the host and the route between source and destination. There are two versions of ping program in the Andrew machines. Use /bin/ping on unix45.andrew.cmu.edu to answer the following questions. To obtain information about the parameters the tool accepts, type ping -h. Warning: The man page for ping on unix45 corresponds to the tool located in /usr/local/bin/ping. 1. What does the output mean? 2. Why does ping report RTT, instead of one-way delay? Using ping to characterize a link. It is possible to estimate the propagation delay and transmission rate of a link by sending packets of different sizes. Small packets are good to estimate the propagation delay. Large packets are good to estimate the transmission rate given that you have some information about the propagation delay. Ping has command line arguments to specify the size of the packets the tool sends. Use ping to estimate the propagation delay and transmission rate between the following routers: Router A with IP address and Router B with IP address You may assume that there are no processing or queuing delays. 6

7 3. Fill in the table below with the parameters you use and the output you get from ping. Packet Router Packet size # of packets RTT(ms) type (bytes) min avg max Small A B Large A B 4. What is the propagation delay of the link between Router A and Router B? 5. What is the transmission rate of the link between Router A and Router B? References [1] Michael J. Donahoo and Kenneth L. Calvert. TCP/IP sockets in C, Practical guide for programmers. Morgan Kaufmann, London, United Kingdom, [2] W. Richard Stevens. Networking APIs: Sockets and XTI, volume 1 of UNIX Network Programming. Prentice Hall, second edition,

Carnegie Mellon Computer Science Department. 15-744 Spring 2007 Theory Problem Set 2

Carnegie Mellon Computer Science Department. 15-744 Spring 2007 Theory Problem Set 2 Carnegie Mellon Computer Science Department. - Spring Theory Problem Set This problem set has questions. Answer them as clearly and concisely as possible. You may discuss ideas with others in the class,

More information

Homework 2 assignment for ECE374 Posted: 02/21/14 Due: 02/28/14

Homework 2 assignment for ECE374 Posted: 02/21/14 Due: 02/28/14 1 Homework 2 assignment for ECE374 Posted: 02/21/14 Due: 02/28/14 Note: In all written assignments, please show as much of your work as you can. Even if you get a wrong answer, you can get partial credit

More information

Homework 2 assignment for ECE374 Posted: 02/20/15 Due: 02/27/15

Homework 2 assignment for ECE374 Posted: 02/20/15 Due: 02/27/15 1 Homework 2 assignment for ECE374 Posted: 02/20/15 Due: 02/27/15 ote: In all written assignments, please show as much of your work as you can. Even if you get a wrong answer, you can get partial credit

More information

First Midterm for ECE374 02/25/15 Solution!!

First Midterm for ECE374 02/25/15 Solution!! 1 First Midterm for ECE374 02/25/15 Solution!! Instructions: Put your name and student number on each sheet of paper! The exam is closed book. You have 90 minutes to complete the exam. Be a smart exam

More information

CS3250 Distributed Systems

CS3250 Distributed Systems CS3250 Distributed Systems Lecture 4 More on Network Addresses Domain Name System DNS Human beings (apart from network administrators and hackers) rarely use IP addresses even in their human-readable dotted

More information

Using IPM to Measure Network Performance

Using IPM to Measure Network Performance CHAPTER 3 Using IPM to Measure Network Performance This chapter provides details on using IPM to measure latency, jitter, availability, packet loss, and errors. It includes the following sections: Measuring

More information

The exam has 110 possible points, 10 of which are extra credit. There is a Word Bank on Page 8. Pages 7-8 can be removed from the exam.

The exam has 110 possible points, 10 of which are extra credit. There is a Word Bank on Page 8. Pages 7-8 can be removed from the exam. CS326e Spring 2014 Midterm Exam Name SOLUTIONS UTEID The exam has 110 possible points, 10 of which are extra credit. There is a Word Bank on Page 8. Pages 7-8 can be removed from the exam. 1. [4 Points]

More information

Technical Support Information Belkin internal use only

Technical Support Information Belkin internal use only The fundamentals of TCP/IP networking TCP/IP (Transmission Control Protocol / Internet Protocols) is a set of networking protocols that is used for communication on the Internet and on many other networks.

More information

Fundamentals of UNIX Lab 16.2.6 Networking Commands (Estimated time: 45 min.)

Fundamentals of UNIX Lab 16.2.6 Networking Commands (Estimated time: 45 min.) Fundamentals of UNIX Lab 16.2.6 Networking Commands (Estimated time: 45 min.) Objectives: Develop an understanding of UNIX and TCP/IP networking commands Ping another TCP/IP host Use traceroute to check

More information

Lab - Observing DNS Resolution

Lab - Observing DNS Resolution Objectives Part 1: Observe the DNS Conversion of a URL to an IP Address Part 2: Observe DNS Lookup Using the Nslookup Command on a Web Site Part 3: Observe DNS Lookup Using the Nslookup Command on Mail

More information

Lab - Observing DNS Resolution

Lab - Observing DNS Resolution Objectives Part 1: Observe the DNS Conversion of a URL to an IP Address Part 2: Observe DNS Lookup Using the nslookup Command on a Web Site Part 3: Observe DNS Lookup Using the nslookup Command on Mail

More information

Networks 3. 2015 University of Stirling CSCU9B1 Essential Skills for the Information Age. Content

Networks 3. 2015 University of Stirling CSCU9B1 Essential Skills for the Information Age. Content Networks 3 Lecture Networks 3/Slide 1 Content What is a communications protocol? Network protocols TCP/IP High-level protocols Firewalls Network addresses Host name IP address Domain name system (DNS)

More information

Communications and Networking

Communications and Networking Communications and Networking History and Background telephone system local area networks Internet architecture: what the pieces are and how they fit together names and addresses: what's your name and

More information

First Midterm for ECE374 03/09/12 Solution!!

First Midterm for ECE374 03/09/12 Solution!! 1 First Midterm for ECE374 03/09/12 Solution!! Instructions: Put your name and student number on each sheet of paper! The exam is closed book. You have 90 minutes to complete the exam. Be a smart exam

More information

Troubleshooting Tools

Troubleshooting Tools Troubleshooting Tools An overview of the main tools for verifying network operation from a host Fulvio Risso Mario Baldi Politecnico di Torino (Technical University of Turin) see page 2 Notes n The commands/programs

More information

File transfer and login using IPv6, plus What to do when things don t work

File transfer and login using IPv6, plus What to do when things don t work File transfer and login using IPv6, plus What to do when things don t work Introduction Usually file transfers to remote computers and logins just work. But sometimes they don t. This article reviews the

More information

Computer Networks - CS132/EECS148 - Spring 2013 ------------------------------------------------------------------------------

Computer Networks - CS132/EECS148 - Spring 2013 ------------------------------------------------------------------------------ Computer Networks - CS132/EECS148 - Spring 2013 Instructor: Karim El Defrawy Assignment 2 Deadline : April 25 th 9:30pm (hard and soft copies required) ------------------------------------------------------------------------------

More information

CHAPTER 7. E-Mailing with CGI

CHAPTER 7. E-Mailing with CGI CHAPTER 7 E-Mailing with CGI OVERVIEW One of the most important tasks of any CGI program is ultimately to let someone know that something has happened. The most convenient way for users is to have this

More information

1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP.

1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP. Chapter 2 Review Questions 1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP. 2. Network architecture refers to the organization of the communication process

More information

Tutorial on Socket Programming

Tutorial on Socket Programming Tutorial on Socket Programming Computer Networks - CSC 458 Department of Computer Science Seyed Hossein Mortazavi (Slides are mainly from Monia Ghobadi, and Amin Tootoonchian, ) 1 Outline Client- server

More information

Introduction to Socket Programming Part I : TCP Clients, Servers; Host information

Introduction to Socket Programming Part I : TCP Clients, Servers; Host information Introduction to Socket Programming Part I : TCP Clients, Servers; Host information Keywords: sockets, client-server, network programming-socket functions, OSI layering, byte-ordering Outline: 1.) Introduction

More information

Wireshark DNS. Introduction. nslookup

Wireshark DNS. Introduction. nslookup Wireshark DNS Introduction The Domain Name System (DNS) translates hostnames to IP addresses, fulfilling a critical role in the Internet infrastructure. In this lab, we ll take a closer look at the client

More information

Internet Protocol: IP packet headers. vendredi 18 octobre 13

Internet Protocol: IP packet headers. vendredi 18 octobre 13 Internet Protocol: IP packet headers 1 IPv4 header V L TOS Total Length Identification F Frag TTL Proto Checksum Options Source address Destination address Data (payload) Padding V: Version (IPv4 ; IPv6)

More information

Overview of TCP/IP. TCP/IP and Internet

Overview of TCP/IP. TCP/IP and Internet Overview of TCP/IP System Administrators and network administrators Why networking - communication Why TCP/IP Provides interoperable communications between all types of hardware and all kinds of operating

More information

architecture: what the pieces are and how they fit together names and addresses: what's your name and number?

architecture: what the pieces are and how they fit together names and addresses: what's your name and number? Communications and networking history and background telephone system local area networks Internet architecture: what the pieces are and how they fit together names and addresses: what's your name and

More information

Hands On Activities: TCP/IP Network Monitoring and Management

Hands On Activities: TCP/IP Network Monitoring and Management Hands On Activities: TCP/IP Network Monitoring and Management 1. TCP/IP Network Management Tasks TCP/IP network management tasks include Examine your physical and IP network address Traffic monitoring

More information

DNS Resolving using nslookup

DNS Resolving using nslookup DNS Resolving using nslookup Oliver Hohlfeld & Andre Schröder January 8, 2007 Abstract This report belongs to a talk given at the networking course (Institue Eurecom, France) in January 2007. It is based

More information

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

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX APPENDIX A Introduction Understanding TCP/IP To fully understand the architecture of Cisco Centri Firewall, you need to understand the TCP/IP architecture on which the Internet is based. This appendix

More information

Tools for penetration tests 1. Carlo U. Nicola, HT FHNW With extracts from documents of : Google; Wireshark; nmap; Nessus.

Tools for penetration tests 1. Carlo U. Nicola, HT FHNW With extracts from documents of : Google; Wireshark; nmap; Nessus. Tools for penetration tests 1 Carlo U. Nicola, HT FHNW With extracts from documents of : Google; Wireshark; nmap; Nessus. What is a penetration test? Goals: 1. Analysis of an IT-environment and search

More information

Wireshark Lab: DNS. 1. nslookup

Wireshark Lab: DNS. 1. nslookup Wireshark Lab: DNS Version: 2.0 2007 J.F. Kurose, K.W. Ross. All Rights Reserved Computer Networking: A Topdown Approach, 4 th edition. As described in Section 2.5 of the textbook, the Domain Name System

More information

Procedure: You can find the problem sheet on Drive D: of the lab PCs. 1. IP address for this host computer 2. Subnet mask 3. Default gateway address

Procedure: You can find the problem sheet on Drive D: of the lab PCs. 1. IP address for this host computer 2. Subnet mask 3. Default gateway address Objectives University of Jordan Faculty of Engineering & Technology Computer Engineering Department Computer Networks Laboratory 907528 Lab.4 Basic Network Operation and Troubleshooting 1. To become familiar

More information

CS 5480/6480: Computer Networks Spring 2012 Homework 1 Solutions Due by 9:00 AM MT on January 31 st 2012

CS 5480/6480: Computer Networks Spring 2012 Homework 1 Solutions Due by 9:00 AM MT on January 31 st 2012 CS 5480/6480: Computer Networks Spring 2012 Homework 1 Solutions Due by 9:00 AM MT on January 31 st 2012 Important: No cheating will be tolerated. No extension. CS 5480 total points = 32 CS 6480 total

More information

Unix System Administration

Unix System Administration Unix System Administration Chris Schenk Lecture 08 Tuesday Feb 13 CSCI 4113, Spring 2007 ARP Review Host A 128.138.202.50 00:0B:DB:A6:76:18 Host B 128.138.202.53 00:11:43:70:45:81 Switch Host C 128.138.202.71

More information

Remote login (Telnet):

Remote login (Telnet): SFWR 4C03: Computer Networks and Computer Security Feb 23-26 2004 Lecturer: Kartik Krishnan Lectures 19-21 Remote login (Telnet): Telnet permits a user to connect to an account on a remote machine. A client

More information

idatafax Troubleshooting

idatafax Troubleshooting idatafax Troubleshooting About idatafax idatafax is a client application that connects back to a server at the PHRI based in Hamilton, Ontario, Canada. It is not known to interfere with any software and

More information

Implementing Microsoft Exchange Mail on Demand

Implementing Microsoft Exchange Mail on Demand Implementing Microsoft Exchange Mail on Demand Blue Reef Consulting, Inc. http://www.bluereef.net 1.0 Introduction Microsoft Exchange is an e-mail server that can be used to handle local (Intranet) e-

More information

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

2057-15. First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring 2057-15 First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring 7-25 September 2009 TCP/IP Networking Abhaya S. Induruwa Department

More information

Glossary of Technical Terms Related to IPv6

Glossary of Technical Terms Related to IPv6 AAAA Record An AAAA record stores a 128-bit Internet Protocol version 6 (IPv6) address, which does not fit the standard A record format. For example, 2007:0db6:85a3:0000:0000:6a2e:0371:7234 is a valid

More information

LAB THREE STATIC ROUTING

LAB THREE STATIC ROUTING LAB THREE STATIC ROUTING In this lab you will work with four different network topologies. The topology for Parts 1-4 is shown in Figure 3.1. These parts address router configuration on Linux PCs and a

More information

Domain Name System E-mail WWW. Application Layer. Mahalingam Ramkumar Mississippi State University, MS. September 15, 2014.

Domain Name System E-mail WWW. Application Layer. Mahalingam Ramkumar Mississippi State University, MS. September 15, 2014. Application Layer Mahalingam Mississippi State University, MS September 15, 2014 Outline 1 DNS Records DNS Components 2 Message Transfer Fetching Emails 3 Applications We will focus on 3 applications DNS

More information

3. The Domain Name Service

3. The Domain Name Service 3. The Domain Name Service n Overview and high level design n Typical operation and the role of caching n Contents of DNS Resource Records n Basic message formats n Configuring/updating Resource Records

More information

Lab 2. CS-335a. Fall 2012 Computer Science Department. Manolis Surligas surligas@csd.uoc.gr

Lab 2. CS-335a. Fall 2012 Computer Science Department. Manolis Surligas surligas@csd.uoc.gr Lab 2 CS-335a Fall 2012 Computer Science Department Manolis Surligas surligas@csd.uoc.gr 1 Summary At this lab we will cover: Basics of Transport Layer (TCP, UDP) Broadcast ARP DNS More Wireshark filters

More information

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

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP Overview Securing TCP/IP Chapter 6 TCP/IP Open Systems Interconnection Model Anatomy of a Packet Internet Protocol Security (IPSec) Web Security (HTTP over TLS, Secure-HTTP) Lecturer: Pei-yih Ting 1 2

More information

How do I get to www.randomsite.com?

How do I get to www.randomsite.com? Networking Primer* *caveat: this is just a brief and incomplete introduction to networking to help students without a networking background learn Network Security. How do I get to www.randomsite.com? Local

More information

Linux MDS Firewall Supplement

Linux MDS Firewall Supplement Linux MDS Firewall Supplement Table of Contents Introduction... 1 Two Options for Building a Firewall... 2 Overview of the iptables Command-Line Utility... 2 Overview of the set_fwlevel Command... 2 File

More information

TCP/IP Protocol Suite. Marshal Miller Chris Chase

TCP/IP Protocol Suite. Marshal Miller Chris Chase TCP/IP Protocol Suite Marshal Miller Chris Chase Robert W. Taylor (Director of Information Processing Techniques Office at ARPA 1965-1969) "For each of these three terminals, I had three different sets

More information

ARP and DNS. ARP entries are cached by network devices to save time, these cached entries make up a table

ARP and DNS. ARP entries are cached by network devices to save time, these cached entries make up a table ARP and DNS Both protocols do conversions of a sort, but the distinct difference is ARP is needed for packet transfers and DNS is not needed but makes things much easier. ARP Address Resolution Protocol

More information

Connecting with Computer Science, 2e. Chapter 5 The Internet

Connecting with Computer Science, 2e. Chapter 5 The Internet Connecting with Computer Science, 2e Chapter 5 The Internet Objectives In this chapter you will: Learn what the Internet really is Become familiar with the architecture of the Internet Become familiar

More information

THE HONG KONG POLYTECHNIC UNIVERSITY Department of Electronic and Information Engineering

THE HONG KONG POLYTECHNIC UNIVERSITY Department of Electronic and Information Engineering THE HONG KONG POLYTECHNIC UNIVERSITY Department of Electronic and Information Engineering ENG 224 Information Technology Laboratory 6: Internet Connection Sharing Objectives: Build a private network that

More information

1.1 Prior Knowledge and Revision

1.1 Prior Knowledge and Revision 1.1. PRIOR KNOWLEDGE AND REVISION 3 1.1 Prior Knowledge and Revision This topic assumes you already have some background knowledge of the Internet. You may have studied The Internet unit of Intermediate

More information

1 Introduction: Network Applications

1 Introduction: Network Applications 1 Introduction: Network Applications Some Network Apps E-mail Web Instant messaging Remote login P2P file sharing Multi-user network games Streaming stored video clips Internet telephone Real-time video

More information

Computer Networks Network architecture

Computer Networks Network architecture Computer Networks Network architecture Saad Mneimneh Computer Science Hunter College of CUNY New York - Networks are like onions - They stink? - Yes, no, they have layers Shrek and Donkey 1 Introduction

More information

Wireshark Lab: DNS v6.01

Wireshark Lab: DNS v6.01 Wireshark Lab: DNS v6.01 Supplement to Computer Networking: A Top-Down Approach, 6 th ed., J.F. Kurose and K.W. Ross Tell me and I forget. Show me and I remember. Involve me and I understand. Chinese proverb

More information

Objectives of Lecture. Network Architecture. Protocols. Contents

Objectives of Lecture. Network Architecture. Protocols. Contents Objectives of Lecture Network Architecture Show how network architecture can be understood using a layered approach. Introduce the OSI seven layer reference model. Introduce the concepts of internetworking

More information

UNIX Sockets. COS 461 Precept 1

UNIX Sockets. COS 461 Precept 1 UNIX Sockets COS 461 Precept 1 Clients and Servers Client program Running on end host Requests service E.g., Web browser Server program Running on end host Provides service E.g., Web server GET /index.html

More information

Cross-platform TCP/IP Socket Programming in REXX

Cross-platform TCP/IP Socket Programming in REXX Cross-platform TCP/IP Socket programming in REXX Abstract: TCP/IP is the key modern network technology, and the various REXX implementations have useful, if incompatible interfaces to it. In this session,

More information

Virtual Server and DDNS. Virtual Server and DDNS. For BIPAC 741/743GE

Virtual Server and DDNS. Virtual Server and DDNS. For BIPAC 741/743GE Virtual Server and DDNS For BIPAC 741/743GE August, 2003 1 Port Number In TCP/IP and UDP networks, a port is a 16-bit number, used by the host-to-host protocol to identify to which application program

More information

Subnetting,Supernetting, VLSM & CIDR

Subnetting,Supernetting, VLSM & CIDR Subnetting,Supernetting, VLSM & CIDR WHAT - IP Address Unique 32 or 128 bit Binary, used to identify a system on a Network or Internet. Network Portion Host Portion CLASSFULL ADDRESSING IP address space

More information

Internet Security [1] VU 184.216. Engin Kirda engin@infosys.tuwien.ac.at

Internet Security [1] VU 184.216. Engin Kirda engin@infosys.tuwien.ac.at Internet Security [1] VU 184.216 Engin Kirda engin@infosys.tuwien.ac.at Christopher Kruegel chris@auto.tuwien.ac.at Administration Challenge 2 deadline is tomorrow 177 correct solutions Challenge 4 will

More information

Lecture 2-ter. 2. A communication example Managing a HTTP v1.0 connection. G.Bianchi, G.Neglia, V.Mancuso

Lecture 2-ter. 2. A communication example Managing a HTTP v1.0 connection. G.Bianchi, G.Neglia, V.Mancuso Lecture 2-ter. 2 A communication example Managing a HTTP v1.0 connection Managing a HTTP request User digits URL and press return (or clicks ). What happens (HTTP 1.0): 1. Browser opens a TCP transport

More information

Packet Sniffing and Spoofing Lab

Packet Sniffing and Spoofing Lab SEED Labs Packet Sniffing and Spoofing Lab 1 Packet Sniffing and Spoofing Lab Copyright c 2014 Wenliang Du, Syracuse University. The development of this document is/was funded by the following grants from

More information

Network Management and Debugging. Jing Zhou

Network Management and Debugging. Jing Zhou Network Management and Debugging Jing Zhou Network Management and Debugging Network management generally includes following task: Fault detection for networks, gateways and critical servers Schemes for

More information

EECS 489 Winter 2010 Midterm Exam

EECS 489 Winter 2010 Midterm Exam EECS 489 Winter 2010 Midterm Exam Name: This is an open-book, open-resources exam. Explain or show your work for each question. Your grade will be severely deducted if you don t show your work, even if

More information

LESSON 3.6. 98-366 Networking Fundamentals. Understand TCP/IP

LESSON 3.6. 98-366 Networking Fundamentals. Understand TCP/IP Understand TCP/IP Lesson Overview In this lesson, you will learn about: TCP/IP Tracert Telnet Netstat Reserved addresses Local loopback IP Ping Pathping Ipconfig Protocols Anticipatory Set Experiment with

More information

Sage ERP Accpac Online

Sage ERP Accpac Online Sage ERP Accpac Online Mac Resource Guide Thank you for choosing Sage ERP Accpac Online. This Resource Guide will provide important information and instructions on how you can get started using your Mac

More information

COMP 361 Computer Communications Networks. Fall Semester 2003. Midterm Examination

COMP 361 Computer Communications Networks. Fall Semester 2003. Midterm Examination COMP 361 Computer Communications Networks Fall Semester 2003 Midterm Examination Date: October 23, 2003, Time 18:30pm --19:50pm Name: Student ID: Email: Instructions: 1. This is a closed book exam 2. This

More information

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

Sage 300 ERP Online. Mac Resource Guide. (Formerly Sage ERP Accpac Online) Updated June 1, 2012. Page 1 Sage 300 ERP Online (Formerly Sage ERP Accpac Online) Mac Resource Guide Updated June 1, 2012 Page 1 Table of Contents 1.0 Introduction... 3 2.0 Getting Started with Sage 300 ERP Online using a Mac....

More information

1 DNS in the real world

1 DNS in the real world New York University Computer Science Department G22.2620-001, Fall 07 Problem Set 1 Solution by Hui Zhang 1 DNS in the real world In this problem, you will learn more about DNS using the UNIX utility dig.

More information

Computer Networks: DNS a2acks CS 1951e - Computer Systems Security: Principles and Prac>ce. Domain Name System

Computer Networks: DNS a2acks CS 1951e - Computer Systems Security: Principles and Prac>ce. Domain Name System Computer Networks: DNS a2acks CS 1951e - Computer Systems Security: Principles and Prac>ce 18/02/15 Networks: DNS attacks 1 Domain Name System The domain name system (DNS) is an applica>on- layer protocol

More information

Internet Control Protocols Reading: Chapter 3

Internet Control Protocols Reading: Chapter 3 Internet Control Protocols Reading: Chapter 3 ARP - RFC 826, STD 37 DHCP - RFC 2131 ICMP - RFC 0792, STD 05 1 Goals of Today s Lecture Bootstrapping an end host Learning its own configuration parameters

More information

Napster and Gnutella: a Comparison of two Popular Peer-to-Peer Protocols. Anthony J. Howe Supervisor: Dr. Mantis Cheng University of Victoria

Napster and Gnutella: a Comparison of two Popular Peer-to-Peer Protocols. Anthony J. Howe Supervisor: Dr. Mantis Cheng University of Victoria Napster and Gnutella: a Comparison of two Popular Peer-to-Peer Protocols Anthony J Howe Supervisor: Dr Mantis Cheng University of Victoria February 28, 2002 Abstract This article presents the reverse engineered

More information

IP addressing and forwarding Network layer

IP addressing and forwarding Network layer The Internet Network layer Host, router network layer functions: IP addressing and forwarding Network layer Routing protocols path selection RIP, OSPF, BGP Transport layer: TCP, UDP forwarding table IP

More information

- Basic Router Security -

- Basic Router Security - 1 Enable Passwords - Basic Router Security - The enable password protects a router s Privileged mode. This password can be set or changed from Global Configuration mode: Router(config)# enable password

More information

Protocols. Packets. What's in an IP packet

Protocols. Packets. What's in an IP packet Protocols Precise rules that govern communication between two parties TCP/IP: the basic Internet protocols IP: Internet Protocol (bottom level) all packets shipped from network to network as IP packets

More information

Transparent Identification of Users

Transparent Identification of Users Transparent Identification of Users Websense Web Security Solutions v7.5, v7.6 Transparent Identification of Users 1996 2011, Websense, Inc. All rights reserved. 10240 Sorrento Valley Rd., San Diego, CA

More information

Cisco Configuring Commonly Used IP ACLs

Cisco Configuring Commonly Used IP ACLs Table of Contents Configuring Commonly Used IP ACLs...1 Introduction...1 Prerequisites...2 Hardware and Software Versions...3 Configuration Examples...3 Allow a Select Host to Access the Network...3 Allow

More information

Additional Information: A link to the conference website is available at: http://www.curtin.edu.my/cutse2008/index.html

Additional Information: A link to the conference website is available at: http://www.curtin.edu.my/cutse2008/index.html Citation: Veeramani, S. and Gopal, Lenin. 2008. Network monitoring tool, in Curtin University of Technology (ed), Curtin University of Technology Science and Engineering International Conference CUTSE

More information

Application Layer. CMPT371 12-1 Application Layer 1. Required Reading: Chapter 2 of the text book. Outline of Chapter 2

Application Layer. CMPT371 12-1 Application Layer 1. Required Reading: Chapter 2 of the text book. Outline of Chapter 2 CMPT371 12-1 Application Layer 1 Application Layer Required Reading: Chapter 2 of the text book. Outline of Chapter 2 Network applications HTTP, protocol for web application FTP, file transfer protocol

More information

Laboration, Ping, Traceroute, etc

Laboration, Ping, Traceroute, etc Laboration, Ping, Traceroute, etc KTHNOC 31 augusti 2005 Sammanfattning This lab will introduce you to some networking tools. Name: Personnummer: Date: Signature: 1 1 Ifcong Which interfaces are dened

More information

NQA Technology White Paper

NQA Technology White Paper NQA Technology White Paper Keywords: NQA, test, probe, collaboration, scheduling Abstract: Network Quality Analyzer (NQA) is a network performance probe and statistics technology used to collect statistics

More information

Linux MPS Firewall Supplement

Linux MPS Firewall Supplement Linux MPS Firewall Supplement First Edition April 2007 Table of Contents Introduction...1 Two Options for Building a Firewall...2 Overview of the iptables Command-Line Utility...2 Overview of the set_fwlevel

More information

Port Scanning and Vulnerability Assessment. ECE4893 Internetwork Security Georgia Institute of Technology

Port Scanning and Vulnerability Assessment. ECE4893 Internetwork Security Georgia Institute of Technology Port Scanning and Vulnerability Assessment ECE4893 Internetwork Security Georgia Institute of Technology Agenda Reconnaissance Scanning Network Mapping OS detection Vulnerability assessment Reconnaissance

More information

Motivation. Domain Name System (DNS) Flat Namespace. Hierarchical Namespace

Motivation. Domain Name System (DNS) Flat Namespace. Hierarchical Namespace Motivation Domain Name System (DNS) IP addresses hard to remember Meaningful names easier to use Assign names to IP addresses Name resolution map names to IP addresses when needed Namespace set of all

More information

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

EE 7376: Introduction to Computer Networks. Homework #3: Network Security, Email, Web, DNS, and Network Management. Maximum Points: 60 EE 7376: Introduction to Computer Networks Homework #3: Network Security, Email, Web, DNS, and Network Management Maximum Points: 60 1. Network security attacks that have to do with eavesdropping on, or

More information

How To Design A Layered Network In A Computer Network

How To Design A Layered Network In A Computer Network A Layered Approach to Computer Networks Physical Layer Data Link Layer Network Layer Transport Layer Session Layer Presentation Layer Application Layer Different layer of abstraction Different error control

More information

Homework 3 TCP/IP Network Monitoring and Management

Homework 3 TCP/IP Network Monitoring and Management Homework 3 TCP/IP Network Monitoring and Management Hw3 Assigned on 2013/9/13, Due 2013/9/24 Hand In Requirement Prepare a activity/laboratory report (name it Hw3_WebSys.docx) using the ECET Lab report

More information

Lab 4: Socket Programming: netcat part

Lab 4: Socket Programming: netcat part Lab 4: Socket Programming: netcat part Overview The goal of this lab is to familiarize yourself with application level programming with sockets, specifically stream or TCP sockets, by implementing a client/server

More information

Firewall Stateful Inspection of ICMP

Firewall Stateful Inspection of ICMP The feature addresses the limitation of qualifying Internet Control Management Protocol (ICMP) messages into either a malicious or benign category by allowing the Cisco IOS firewall to use stateful inspection

More information

FILE TRANSFER PROTOCOL INTRODUCTION TO FTP, THE INTERNET'S STANDARD FILE TRANSFER PROTOCOL

FILE TRANSFER PROTOCOL INTRODUCTION TO FTP, THE INTERNET'S STANDARD FILE TRANSFER PROTOCOL FTP FILE TRANSFER PROTOCOL INTRODUCTION TO FTP, THE INTERNET'S STANDARD FILE TRANSFER PROTOCOL Peter R. Egli INDIGOO.COM 1/22 Contents 1. FTP versus TFTP 2. FTP principle of operation 3. FTP trace analysis

More information

TCP/IP Networking An Example

TCP/IP Networking An Example TCP/IP Networking An Example Introductory material. This module illustrates the interactions of the protocols of the TCP/IP protocol suite with the help of an example. The example intents to motivate the

More information

Application Layer -1- Network Tools

Application Layer -1- Network Tools EITF25 Internet: Technology and Applications Application Layer -1- Network Tools 2015, Lecture 08 Kaan Bür Previously on EITF25 Addressing above IP Ports, sockets Process-to-process delivery Transport

More information

Network Pop Quiz 5 Brought to you by www.rmroberts.com please visit our site!

Network Pop Quiz 5 Brought to you by www.rmroberts.com please visit our site! Network Pop Quiz 5 Brought to you by www.rmroberts.com please visit our site! This is a set of questions to help you prepared for the CompTIA Network+ certification examination. You should not exceed twenty

More information

3.1 RS-232/422/485 Pinout:PORT1-4(RJ-45) RJ-45 RS-232 RS-422 RS-485 PIN1 TXD PIN2 RXD PIN3 GND PIN4 PIN5 T+ 485+ PIN6 T- 485- PIN7 R+ PIN8 R-

3.1 RS-232/422/485 Pinout:PORT1-4(RJ-45) RJ-45 RS-232 RS-422 RS-485 PIN1 TXD PIN2 RXD PIN3 GND PIN4 PIN5 T+ 485+ PIN6 T- 485- PIN7 R+ PIN8 R- MODEL ATC-2004 TCP/IP TO RS-232/422/485 CONVERTER User s Manual 1.1 Introduction The ATC-2004 is a 4 Port RS232/RS485 to TCP/IP converter integrated with a robust system and network management features

More information

Agenda. Distributed System Structures. Why Distributed Systems? Motivation

Agenda. Distributed System Structures. Why Distributed Systems? Motivation Agenda Distributed System Structures CSCI 444/544 Operating Systems Fall 2008 Motivation Network structure Fundamental network services Sockets and ports Client/server model Remote Procedure Call (RPC)

More information

Layered Architectures and Applications

Layered Architectures and Applications 1 Layered Architectures and Applications Required reading: Garcia 2.1, 2.2, 2.3 CSE 3213, Fall 2010 Instructor: N. Vlajic 2 Why Layering?! 3 Montreal London Paris Alice wants to send a mail to Bob and

More information

Assignment #3 Routing and Network Analysis. CIS3210 Computer Networks. University of Guelph

Assignment #3 Routing and Network Analysis. CIS3210 Computer Networks. University of Guelph Assignment #3 Routing and Network Analysis CIS3210 Computer Networks University of Guelph Part I Written (50%): 1. Given the network graph diagram above where the nodes represent routers and the weights

More information

Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer

Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer CPSC 360 Network Programming Applications & Application-Layer Protocols: The Domain Name System and Peerto-Peer Systems Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu

More information

Introduction to Socket programming using C

Introduction to Socket programming using C Introduction to Socket programming using C Goal: learn how to build client/server application that communicate using sockets Vinay Narasimhamurthy S0677790@sms.ed.ac.uk CLIENT SERVER MODEL Sockets are

More information

Socket = an interface connection between two (dissimilar) pipes. OS provides this API to connect applications to networks. home.comcast.

Socket = an interface connection between two (dissimilar) pipes. OS provides this API to connect applications to networks. home.comcast. Interprocess communication (Part 2) For an application to send something out as a message, it must arrange its OS to receive its input. The OS is then sends it out either as a UDP datagram on the transport

More information