Client Server Concepts, DNS, Telnet, FTP

Similar documents
Client Server Concepts, DNS, DHCP

Internet Routing Protocols Part II

Review of Network Technologies

2. Introduction to Internet Applications

Networking Basics. EC512 Spring /15/2015 EC512 - Prof. Thomas Skinner 1

CS155b: E-Commerce. Lecture 3: Jan 16, How Does the Internet Work? Acknowledgements: S. Bradner and R. Wang

Lecture 05 Application Layer - I

QUIZ: Longest Matching Prefix

Introduction to Networks and the Internet

System Programming. Introduction to computer networks

Objectives. Upon completion you will be able to:

Manual Configuration Stateful Address Configuration (i.e. from servers) Stateless Autoconfiguration : IPv6

Applications. Chong-kwon Kim. Running in end systems (hosts) over transport layer protocols Ex: , Web, FTP, instant messaging

Introduction to Internet, Web, and TCP/IP Protocols SEEM

CSE 124 January 27, Winter 2017, UCSD Prof. George Porter

User Datagram Protocol(UDP)

Application Layer: OSI and TCP/IP Models

ECS 152A Computer Networks Instructor: Liu. Name: Student ID #: Final Exam: March 17, 2005

Lab - Using Wireshark to Examine a UDP DNS Capture

Lab - Using Wireshark to Examine a UDP DNS Capture

The Internet. Overview. Network building blocks

TRANSMISSION CONTROL PROTOCOL. ETI 2506 TELECOMMUNICATION SYSTEMS Monday, 7 November 2016

Network+ Guide to Networks 6 th Edition. Chapter 4 Introduction to TCP/IP Protocols

A DNS Tutorial

How does the Internet Work? The Basics: Getting a Web Page. The Basics: Getting a Web Page. Client-Server model. The Internet: Basics

SC/CSE 3213 Winter Sebastian Magierowski York University CSE 3213, W13 L8: TCP/IP. Outline. Forwarding over network and data link layers

Chapter 7. Local Area Network Communications Protocols

CS4/MSc Computer Networking. Lecture 3: The Application Layer

Fundamental Questions to Answer About Computer Networking, Jan 2009 Prof. Ying-Dar Lin,

Networking and Internetworking 1

MODULE: NETWORKS MODULE CODE: CAN1102C. Duration: 2 Hours 15 Mins. Instructions to Candidates:

Protocol Classification

The Data Link Layer. 32 PART I Networking Basics

CS 455 Internet Architecture, Page 3 ffl By 1985, the ARPANET was heavily used and congested; the National Science Foundation (NSF) initiated the NSFN

Introduction to Networking

APPLICATION LAYER APPLICATION LAYER : DNS, HTTP, , SMTP, Telnet, FTP, Security-PGP-SSH.

PIC 40A. Lecture 1: The Internet. Copyright 2011 Jukka Virtanen UCLA 1 03/31/14

Second Semester Examination Higher National Diploma in Information Technology First Year

Information Network Systems The application layer. Stephan Sigg

Communication Networks

Chapter 19. Domain Name System (DNS)

IP ADDRESSES, NAMING, AND DNS

PLEASE READ CAREFULLY BEFORE YOU START

Review for Internet Introduction

TCP/IP Transport Layer Protocols, TCP and UDP

Electrical Engineering Department EE 400, Experiment # 4 IP Addressing and Subnetting

Introduction to TCP/IP

What is a Network? TCP / IP. The ISO OSI Model. Protocols. The TCP/IP Protocol Suite. The TCP/IP Protocol Suite. Computer network.

Networking Applications

Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 28 IP Version 4

Lecture 2-ter. 2. A communication example Managing a HTTP v1.0 connection. Managing a HTTP request. transport session. Step 1 - opening transport

ECE 650 Systems Programming & Engineering. Spring 2018

Implementing VXLAN. Prerequisites for implementing VXLANs. Information about Implementing VXLAN

Lecture 18 Overview. Last Lecture. This Lecture. Next Lecture. Internet Protocol (1) Internet Protocol (2)

Quiz. Segment structure and fields Flow control (rwnd) Timeout interval. Phases transition ssthresh setting Cwnd setting

UNIVERSITY OF TORONTO FACULTY OF APPLIED SCIENCE AND ENGINEERING

Part 5: FTP More about this course about Internet

INTRODUCTORY INFORMATION TECHNOLOGY COMMUNICATING OVER NETWORKS. Faramarz Hendessi

Cisco Cisco Certified Network Associate (CCNA)

Electronic Mail. Prof. Indranil Sen Gupta. Professor, Dept. of Computer Science & Engineering Indian Institute of Technology Kharagpur

Scale Yourself. Lesson 3: Introduction to Internet Technology. Computer Technology 3/13/2015

The Internet Protocol (IP)

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

Computer Networks. Lecture 9 Network and transport layers, IP, TCP, UDP protocols

ICS 351: Networking Protocols

Data Communication Prof. A. Pal Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 34 TCP/ IP I

Lecture A4 Network / Internet. Computing and Art : Nature, Power, and Limits CC 3.12: Fall 2007

Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione. 09 Intranetting. Fundamentals of Communication Networks

IPv6: An Introduction

5. Write a capture filter for question 4.

EECS 122: Introduction to Computer Networks DNS and WWW. Internet Names & Addresses

Chapter 4 Network Layer: The Data Plane

Experiment 2: Wireshark as a Network Protocol Analyzer

Network Layer: Control/data plane, addressing, routers

Review. Some slides are in courtesy of J. Kurose and K. Ross

Introduction to IPv6. Unit -2. Prepared By:- NITIN PANDYA Assistant Professor, SVBIT.

CS 3516: Computer Networks

INTERNET ARCHITECTURE & PROTOCOLS

Network Reference Models

Data Center Configuration. 1. Configuring VXLAN

Network Layer (1) Networked Systems 3 Lecture 8

TCP/IP Networking Basics

Domain Name Service. DNS Overview. October 2009 Computer Networking 1

IPng (IPv6) Motivation. Currently: mainly servers, workstations, SLIP/PPP Address space exhaustion + new uses:

Application Layer Protocols

CSEN 404 Introduction to Networks. Mervat AbuElkheir Mohamed Abdelrazik. ** Slides are attributed to J. F. Kurose

Last time. Wireless link-layer. Introduction. Characteristics of wireless links wireless LANs networking. Cellular Internet access

Overview General network terminology. Chapter 9.1: DNS

BSc Year 2 Data Communications Lab - Using Wireshark to View Network Traffic. Topology. Objectives. Background / Scenario

Network+ Guide to Networks, Seventh Edition Chapter 2, Solutions

Network and Security: Introduction

CSCI 466 Midterm Networks Fall 2013

Lecture 8. Network Layer (cont d) Network Layer 1-1

0 0& Basic Background. Now let s get into how things really work!

Transport Layer (TCP/UDP)

UDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data

CCNA 1 v3.11 Module 11 TCP/IP Transport and Application Layers

Introduction to Network. Topics

Computer Networking: A Top Down Approach Featuring the. Computer Networks with Internet Technology, William

Data & Computer Communication

Transcription:

Indian Institute of Technology Kharagpur Client Server Concepts, DNS, Telnet, FTP Prof. Indranil Sen Gupta Dept. of Computer Science & Engg. I.I.T. Kharagpur, INDIA Lecture 9: Client server concepts, DNS, Telnet, FTP On completion, the student will be able to: 1. Explain how the client-server concept works. 2. Explain and illustrate the name resolution process used by DNS servers. 3. Explain how the Telnet and FTP protocol works. 4. Demonstrate usage of Telnet and FTP commands. 1

Client-server Model Standard model for developing network applications. Notion of client and server. A server is a process that is offering some service. A client is a process that is requesting the service. Server or client may be running on different machines. Server waits for requests from client(s). Client-server Model (contd.) CLIENT SERVER CLIENT CLIENT 2

Client-server Model (contd.) Typical scenario: The server process starts on some computer system. Initializes itself, then goes to sleep waiting for a client request. A client process starts, either on the same system or on some other system. Sends a request to the server. When the server process has finished providing its service to the client, the server goes back to sleep, waiting for the next client request to arrive. The process repeats. 3

Client-server Model (contd.) Roles of the client and the server processes are asymmetric. Two types of servers: Iterative servers. Concurrent servers. Iterative Servers Used when the server process knows in advance how long it takes to handle each request and it handles each request itself. Single copy of server runs at all times. A client may have to wait if the server is busy. 4

Concurrent Servers Used when the amount of work required to handle a request is unknown; the server starts another process to handle each request. A copy of the server caters to a client s request in a dedicated fashion. As many copies of server as there are client requests. Using TCP or UDP Before start of communication, a connection has to be established between the two hosts. Five components in a connection: Protocol used Source IP address Source port number Destination IP address Destination port number 5

Develop a Network Application The best way is to use some standard and well-accepted protocol. At the data link layer level, use Ethernet. At the network layer level, use IP. At the transport layer level, use TCP. At the application layer level, use a standard API like the Berkeley Socket Interface. What is a Socket? The socket is the BSD method for achieving inter-process communication (IPC). It is used to allow one process to speak to another (on same or different machine). Analogy: Like the telephone is used to allow one person to speak to another. 6

Basic Idea When two processes located on two machines communicate, we define association and socket. Association: basically a 5-tuple Protocol Local IP address Local port number Remote IP address Remote port number Socket: also called half-association (a 3-tuple) Protocol, local IP address, local port number Protocol, remote IP address, remote port number 7

Domain Name System (DNS) What is DNS? The global database system for Internet addressing, mail and other information. Much easier to use and memorize. Concept of domains and sub-domains. Domain management is distributed. DNS servers translate domain names to IP addresses. 8

Top Level Domains com Commercial org Non-profit net Network service provider gov US govt. mil military edu Education au Australian at Austrian ca Canadian dk Dutch fr French de German in Indian it Italian jp Japanese kr Korean nz New Zealand es Spanish tw Taiwanese uk British or Irish us U.S. Domain Name Structure Domain names are arranged in a hierarchical tree-like structure. ernet iitkgp cse ece mech in iitb cse math nic Eg: cse.iitkgp.ernet.in 9

Some Statistics In thousands Year COM EDU GOV MIL NET ORG 1991 200 250 75 20 5 50 1992 350 450 100 20 10 50 1993 700 700 150 30 25 75 1994 1,200 1,075 250 100 125 175 1995 2,400 1,700 300 250 700 250 Name Resolution Process The commonly used server is BIND (Berkeley Internal Name Domain). Runs under UNIX as a process called named. When an application needs some information from the server, it invokes the DNS name resolver. DNS translates a fully qualified domain name into the corresponding IP address. Using the command nslookup. 10

If the name server does not have the information locally, it asks its primary server, and so on. For redundancy, each host may also have one or more secondary name servers which may be queried when the primary fails. How do name servers update themselves? Hierarchy of Name Servers root au edu com in stanford.edu gatech.edu rediff.com yahoo.com 11

Recursive Name Resolution root edu com client stanford.edu yahoo.com Iterative Name Resolution Client sequentially sends queries to DNS servers and receives response. If response is negative, the DNS server to query next is also returned. Unlike recursive name resolution, where only one response is finally returned back to the client. 12

TELNET Protocol TELNET Allows a person sitting on one computer to work on another computer. Starts a remote session on another machine. Requires a person to supply login name and password to gain entry. Command: A B telnet <domain_name> telnet <ip_address> 13

TELNET (contd.) Why required? For using software only available on the remote host. For using devices (like printer) connected to the remote host. Typical scenario Many users do a telnet to a remote server, and work there. Server is a bigger and faster computer. TELNET (contd.) By default connection is established over port 23. Any other port number can also be specified. telnet cse.iitkgp.ernet.in 25 14

A Sample TELNET Session SUNNY>> telnet cse Trying 144.16.192.57... Connected to cse. Escape character is '^]'. Linux 1.2.8 (cse) (ttyp0) cse login: isg Password: Last login: Wed Jun 11 12:17:55 from 144.16.202.210 Linux 1.2.8. (POSIX). You have new mail. cse:~$ FTP Protocol 15

File Transfer Protocol (FTP) Allows a person to transfer files between two machines. Requires a person to supply login name and password to gain entry. Command: ftp <domain_name> ftp <ip_address> Anonymous FTP A special form of FTP which has become very popular. Does not require a person to know login name and password. In place of login name, type the word anonymous. In place of password, type the email address. Huge amount of resources are available in anonymous FTP sites. 16

FTP Process Model CLIENT Data Transfer SERVER Data Transfer Control Control Port 21 Port 22 INTERNET How FTP Works? Two connections established: A control connection over port 21, that remains all through a session. A temporary port number, used for every file being transferred. New connection established for every file transfer. 17

Typical FTP Commands put, mput Send one (or more) file(s). get, mget Receive one (or more) file(s). hash Indicates progress of file transfer. prompt Prompts user before actual transfer of each file. bin, asc Selects binary or ascii mode of transfer. exit Terminates connection with ftp server. Sample FTP Sessions SUNNY>> ftp cseindigo Connected to cseindigo. 220 cseindigo FTP server ready. Name (cseindigo:isg): isg 331 Password required for isg. Password: 230 User isg logged in. Remote system type is UNIX. Using binary mode to transfer files. ftp> 18

Sample FTP Sessions (contd.) ftp> dir 200 PORT command successful. 150 Opening ASCII mode data connection for '/bin/ls'. total 97 drwxr-xr-x 2 isg faculty 512 Oct 8 1995 PROJECTS -rw-r--r-- 1 isg faculty 7693 Mar 31 1995 lan-cse.fig -rw-r--r-- 1 isg faculty 6578 Apr 26 1995 lan-cse.fig -rw-r--r-- 1 isg faculty 6721 Jul 12 1995 newlan.fig 226 Transfer complete. Sample FTP Sessions (contd.) ftp> get lan-cse.fig 200 PORT command successful. 150 Opening BINARY mode data connection for 'lan-cse.fig' (6721 bytes). 226 Transfer complete. 6721 bytes received in 0.0389 secs (1.7e+02 Kbytes/sec) ftp> quit 221 Goodbye. SUNNY>> 19

SOLUTIONS TO QUIZ QUESTIONS ON LECTURE 8 20

Quiz Solutions on Lecture 8 1. What are the four types of BGP messages? OPEN, UPDATE, KEEPALIVE and NOTIFICATION. 2. How is a BGP connection between two routers maintained? By periodically sending the KEEPALIVE message. Quiz Solutions on Lecture 8 3. What are the main functional procedures in BGP? Neighbor acquisition, network acquisition, and network reachability. 4. Why is IPv4 not suitable for supporting real-time traffic? IPv4 does not guarantee packets to follow the same path. This leads to unequal delays and out-of-order delivery. 21

Quiz Solutions on Lecture 8 5. How are the (multiple) headers in a IPv6 packet kept track of? All extension headers after the mandatory base header are chained in a linked list. 6. How does IPv6 attempt to support realtime traffic? IPv6 allows a pair of stations to establish a path before sending packets. Quiz Solutions on Lecture 8 7. What does the Payload length field in the IPv6 header signify? Total length of the extension headers and the transport level protocol data unit (PDU). 8. What does the Next Header field in the IPv6 header signify? Type of information that immediately follows the current header. 22

Quiz Solutions on Lecture 8 9. In IPv6, how are the fragments kept track of, in case a packet is fragmented? Base header is copied into all the fragments. Presence of fragment headers in all the fragments. 10. What is anycast addressing? Packet will be delivered to exactly one of a set of computers. Quiz Solutions on Lecture 8 11. How can we use tunneling to send a IPv6 packet over a IPv4 network? The entire IPv6 packet can be encapsulated as payload inside an INv4 packet. 23

QUIZ QUESTIONS ON LECTURE 9 Quiz Questions on Lecture 9 1. What is an iterative server? 2. What is a concurrent server? 3. Which of client or server must start first? 4. What are the components of a socket? 5. What is a domain? 6. What are named and nslookup? 7. How does recursive name resolution works? 24

Quiz Questions on Lecture 9 8. How can you connect to a server xyz.com over port number 1234? 9. Why does ftp use more than one port numbers for communication? 10. What are the functions of the hash and bin commands in ftp? 25