Chakchai So-In, Ph.D.



Similar documents
Application Layer Functionality and Protocols

Cork Institute of Technology Master of Science in Computing in Education National Framework of Qualifications Level 9

1 Introduction: Network Applications

Computer Networks CCNA Module 1

Network Configuration Settings

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt

Introduction to Computer Networks

The Application Layer: DNS

LESSON Networking Fundamentals. Understand TCP/IP

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

1 Data information is sent onto the network cable using which of the following? A Communication protocol B Data packet

Domain Name System (DNS)

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

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

Internet Security [1] VU Engin Kirda

List of Common TCP/IP port numbers

Applications and Services. DNS (Domain Name System)

Chapter 6 Configuring the SSL VPN Tunnel Client and Port Forwarding

Networking Applications

Network: several computers who can communicate. bus. Main example: Ethernet (1980 today: coaxial cable, twisted pair, 10Mb 1000Gb).

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

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

Computer Networks - CS132/EECS148 - Spring

Understanding DNS (the Domain Name System)

Connecting to and Setting Up a Network

Domain Name System (DNS)

The Application Layer. CS158a Chris Pollett May 9, 2007.

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

Fundamentals of the Internet 2009/ Explain meaning the following networking terminologies:

Application Layer. CMPT Application Layer 1. Required Reading: Chapter 2 of the text book. Outline of Chapter 2

How to Add Domains and DNS Records

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

Lab - Observing DNS Resolution

Distributed Systems. 2. Application Layer

Network Layers. CSC358 - Introduction to Computer Networks

1 hours, 30 minutes, 38 seconds Heavy scan. All scanned network resources. Copyright 2001, FTP access obtained

Remote login (Telnet):

Remote Logging. Tanveer Brohi(14cs28)

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

Computer Networks CS321

Installing and Setting up Microsoft DNS Server

Introduction to Network Operating Systems

Network Services. SMTP, Internet Message Format. Johann Oberleitner SS 2006

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

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

The basic groups of components are described below. Fig X- 1 shows the relationship between components on a network.

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

Internet Services. Sadiq M. Sait, Ph.D

TCP/IP and the Internet

The OSI and TCP/IP Models. Lesson 2

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

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 PIN6 T PIN7 R+ PIN8 R-

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

FTP: the file transfer protocol

Device Log Export ENGLISH

EE4607 Session Initiation Protocol

IxLoad - Layer 4-7 Performance Testing of Content Aware Devices and Networks

Quick Scan Features Setup Guide

41376 UDP performing get device status Command Workstation (CWS), Harmony, Bi-directional Driver TCP/UDP

Quick Scan Features Setup Guide. Scan to Setup. See also: System Administration Guide: Contains details about setup.

KM-1820 FS-1118MFP. Network Scanner Setup Guide

Chapter 6. About This Chapter. Before You Begin. Windows 2000 Naming Schemes. [Previous] [Next]

Application Protocols in the TCP/IP Reference Model

DATA COMMUNICATOIN NETWORKING

What really is a Service?

IP Networking. Overview. Networks Impact Daily Life. IP Networking - Part 1. How Networks Impact Daily Life. How Networks Impact Daily Life

Slide 1 Introduction cnds@napier 1 Lecture 6 (Network Layer)

Technical Support Information Belkin internal use only

Application-layer Protocols

Lab - Observing DNS Resolution

Computer Networks & Security 2014/2015

Chapter 6 Virtual Private Networking Using SSL Connections

Glossary of Technical Terms Related to IPv6

Load Balancing. Outlook Web Access. Web Mail Using Equalizer

Principles of Network Applications. Dr. Philip Cannata

Application Layer -1- Network Tools

EXPLORER. TFT Filter CONFIGURATION

CipherMail Gateway Quick Setup Guide

Transport and Network Layer

2- Electronic Mail (SMTP), File Transfer (FTP), & Remote Logging (TELNET)

CS3250 Distributed Systems

The Domain Name System

Networking Domain Name System

User s Manual TCP/IP TO RS-232/422/485 CONVERTER. 1.1 Introduction. 1.2 Main features. Dynamic DNS

Application. Transport. Network. Data Link. Physical. Network Layers. Goal

DHCP and DNS Protocols

Computer System Management: Hosting Servers, Miscellaneous

Basic Network Configuration

SMTP Servers. Determine if an message should be sent to another machine and automatically send it to that machine using SMTP.

Version 0.1 June Xerox WorkCentre 7120 Fax over Internet Protocol (FoIP)

Networking Domain Name System

My FreeScan Vulnerabilities Report

KM-1820 FS-1118MFP. Network Scanner Setup Guide

Transcription:

Application Layer Functionality and Protocols Chakchai So-In, Ph.D. Khon Kaen University Department of Computer Science Faculty of Science, Khon Kaen University 123 Mitaparb Rd., Naimaung, Maung, Khon Kaen, 40002 Thailand chakso@kku.ac.th http://web.kku.ac.th/chakso/322222_fall13/ CS 322 222 4-1 2013 Chakchai So-In

Agenda Define the application layer as the source and destination of data for communication across networks. Explain the role of protocols in supporting communication between server and client processes. Describe the features, operation, and use of well-known TCP/IP application layer services (HTTP, DNS, SMTP). Khon Kaen University CS 322 222 4-2 2013 Chakchai So-In

Applications - The Interface Between Human and Data Networks Explain that applications provide the means for generating and receiving data that can be transported on the network Khon Kaen University CS 322 222 4-3 2013 Chakchai So-In

Applications - The Interface Between Human and Data Networks (Cont.) Explore the role of applications, services and protocols in converting communication to data that can be transferred across the data network Khon Kaen University CS 322 222 4-4 2013 Chakchai So-In

Applications - The Interface Between Human and Data Networks (Cont.) Define the separate roles applications, services and protocols play in transporting data through networks Khon Kaen University CS 322 222 4-5 2013 Chakchai So-In

Applications - The Interface Between Human and Data Networks (Cont.) Application layer is the layer that provides the interface between the applications we use to communicate and the underlying network over which our messages are transmitted. Application layer protocols are used to exchange data between programs running on the source and destination hosts. Application layer protocols specify the format and control information necessary for many of the common Internet communication functions e.g. DNS, HTTP, SMTP.

Applications - The Interface Between Human and Data Networks (Cont.) Example of application layer protocols The protocols in the TCP/IP suite are generally defined by Requests for Comments (RFCs). The Internet Engineering Task Force maintains the RFCs as the standards for the TCP/IP suite. Khon Kaen University CS 322 222 4-7 2013 Chakchai So-In

Example of Application Layer Protocols

The Presentation Layer The Presentation layer has three primary functions: Coding and conversion of Application layer data to ensure that data from the source device can be interpreted by the appropriate application on the destination device. Compression of the data in a manner that can be decompressed by the destination device. Encryption of the data for transmission and the decryption of data upon receipt by the destination. E,g., Quicktime, MPEG, JPEG, GIF, TIFF

The Session Layer The Session layer creates and maintains dialogs between source and destination applications. The Session layer handles the exchange of information to initiate dialogs, keep them active, and to restart sessions that are disrupted or idle for a long period of time. E.g. Network File System (NFC), RPC (Remote Procedure Call), SIP (Session Initiation Protocol), Real Time Transport Protocol (RTP)

Applications - The Interface Between Human and Data Networks (Cont.) Applications provide people a way to create messages. Network-Aware Applications: they implement the application layer protocols and are able to communicate directly with the lower layers of the protocol stack. E-mail clients and web browsers. Application Layer Services: other programs may need the assistance of Application layer services to use network resources, like file transfer or network print spooling. Application Layer Services establish an interface to the network. Protocols provide the rules and formats that govern how data is treated. Protocols specify what messages are exchanged between the source and destination hosts, the syntax of the control commands, the type and format of the data being transmitted, and the appropriate methods for error notification and recovery.

Applications - The Interface Between Human and Data Networks (Cont.)

User Applications/Services/Application Layer Protocol [Animation 3.1.3.1] Khon Kaen University CS 322 222 4-13 2013 Chakchai So-In

Application Layer Protocol Function

The Role of Protocols in Supporting Communication (Client/Server Models) Khon Kaen University CS 322 222 4-15 2013 Chakchai So-In

Servers A server is usually a computer that contains information to be shared with many client systems e.g. web pages, documents, databases, pictures, video, and audio files Different types of server applications may have different requirements for client access e.g. some servers may require authentication The server runs a service, or process, sometimes called a server daemon. Daemons listen for a request from a client When a daemon "hears" a request from a client, it exchanges appropriate messages with the client

The Role of Protocols in Supporting Communication Khon Kaen University CS 322 222 4-17 2013 Chakchai So-In

The Role of Protocols in Supporting Communication (Cont.) Compare and contrast client server networking with peer-topeer networks and peer-to-peer applications

The Role of Protocols in Supporting Communication (Cont.) Compare and contrast client server networking with peer-to-peer networks and peer-to-peer applications (Centralized vs. Distributed) Difficulty: User Management/Policy Allow: Hybrid (index; resource) A peer-to-peer application (P2P), unlike a peer-to-peer network, allows a device to act as both a client and a server within the same communication.

Application Layer Protocols: Examples Domain Name System (DNS) - TCP/UDP Port 53 Hypertext Transfer Protocol (HTTP) - TCP Port 80 Simple Mail Transfer Protocol (SMTP) - TCP Port 25 Post Office Protocol (POP) - TCP Port 110 Telnet - TCP Port 23 Dynamic Host Configuration Protocol - UDP Ports 67 and 68 File Transfer Protocol (FTP) - TCP Ports 20 and 21 Khon Kaen University CS 322 222 4-20 2013 Chakchai So-In

Features, Operation, and Use of TCP/IP Application Layer Services Describe the features of the DNS protocol and how this protocol supports DNS services [Animation 3.3.1.1] Khon Kaen University CS 322 222 4-21 2013 Chakchai So-In

DNS Services and Protocol DNS is a client/server service. DNS differs from other services - While other services use a client that is an application (such as web browser, e-mail client), the DNS client runs as a service itself. The DNS server, sometimes called the DNS resolver, supports name resolution for our other network applications and other services that need it. DNS Verification with nslookup

DNS Services and Protocol (Cont.) A DNS server provides the name resolution using the name daemon, which is often called named. The DNS server stores different types of resource records used to resolve names. These records contain the name, address, and type of record. A - an end device address NS - an authoritative name server CNAME - the canonical name (or Fully Qualified Domain Name) for an alias; used when multiple services have the single network address but each service has its own entry in DNS MX - mail exchange record; maps a domain name to a list of mail exchange servers for that domain

DNS Message Format

DNS Services and Protocol DNS uses a hierarchical system to create a name database to provide name resolution. At the top of the hierarchy, the root servers maintain records about how to reach the top-level domain servers, which in turn have records that point to the second-level domain servers and so on. The resource records list domain names that the server can resolve and alternative servers that can also process requests. If a given server has resource records that correspond to its level in the domain hierarchy, it is said to be authoritative for those records.

DNS Services and Protocol (Cont.)

Features, Operation, and Use of TCP/IP Application Layer Services Describe the features of the HTTP protocol and how this protocol supports the delivery of web pages to the client

Features, Operation, and Use of TCP/IP Application Layer Services (Cont.) Describe the features of the HTTP protocol and how this protocol supports the delivery of web pages to the client

WWW Service and HTTP HTTP is used across the WWW for data transfer and is one of the most used application protocols. HTTP specifies a request/response protocol. Three common message types GET is a client request for data. POST and PUT are used to send messages that upload data to the web server. POST includes the data in the message sent to the server. PUT uploads resources or content to the web server.

E-Mail Services and POP/SMTP Protocol The MUA allows messages to be sent and places received messages into the client's mailbox. In order to receive e-mail messages from an e-mail server, the e- mail client can use POP. Sending e-mail from either a client or a server uses message formats and command strings defined by the SMTP protocol.

E-Mail Services Describe the features of the POP and SMTP protocols, and how these protocols support e-mail services Mail Transfer Agent (MTA) - forwards e-mail to MDA Mail Delivery Agent (MDA) - receives all the inbound mail from the MTA and places it into the appropriate users' mailboxes Mail User Agent (MUA)

E-Mail Services and POP/SMTP Protocol (Cont.) Some of the commands specified in the SMTP protocol are: HELO - identifies the SMTP client process to the SMTP server process EHLO - Is a newer version of HELO, which includes services extensions MAIL FROM - Identifies the sender RCPT TO - Identifies the recipient DATA - Identifies the body of the message

FTP Services Describe the features of the FTP protocol and the role it plays in supporting file sharing (FTPd) TCP Port 21 (Control) and 20 (Data)

DHCP Services Describe the features of the DHCP protocol and the role it plays in allocating IP addresses to network nodes (IP, Netmask, Gateway, etc.) Come and Go (Dynamic Allocation) IP Pool and Lease Security = Mixed Static and Dynamic

DHCP Process

SMB Services Describe the features of the SMB protocol and the role it plays in supporting file sharing in Microsoft-based networks

File Sharing Service/ SMB Protocol (Cont.) The Server Message Block (SMB) (IBM/Microsoft) describes the structure of shared network resources, such as directories, files, printers, and serial ports. (SAMBA = Linux/Unix) Unlike the file sharing supported by FTP, clients establish a long term connection to servers. (Map Network Drive) Once the connection is established, the user of the client can access the resources on the server as if the resource is local to the client host.

File Sharing Service and SMB Protocol The SMB protocol describes file system access and how clients can make requests for files All SMB messages share a common format. This format uses a fixed-sized header followed by a variable-sized parameter and data component. Start, authenticate, and terminate sessions Control file and printer access Allow an application to send or receive messages to or from another device

P2P P Services and Gnutella Protocol Similar to FTP/SMB, P2P = File Sharing (Internet) based on Gnutella protocol, e.g., BearShare, Gnucleus, LimeWire, Morpheus, WinMX and XoloX Do not use a central database instead = Peer/Node

P2P P Services/ Gnutella Protocol (Cont.) Connected Gnutella service, the client applications will search for other Gnutella nodes to connect to. These nodes handle queries for resource locations and replies to those requests. Govern control messages, which help the service discover other nodes. Actual file transfers = HTTP 5 Gnutella Messages ping - for device discovery pong - as a reply to a ping query - for file location query hit - as a reply to a query push - as a download request

Telnet Services and Protocol Before = Text-based system (display terminal) physical Telnet = virtual terminal (software) based on TCP/IP to create session (VTY Virtual Terminal); command line interface (CLI) Telnet Client E.g., telnet (cmd), hyper terminal, TeraTerm

Telnet Services and Protocol (Cont.) Telnet is a client/server protocol; how a VTY session is established and terminated; provides the syntax and commands used to initiate the Telnet session Command = at least two bytes. The first byte is a special character called the Interpret as Command (IAC) character. As its name implies, the IAC defines the next byte as a command rather than text.

Telnet Services and Protocol (Cont.) Some sample Telnet protocol commands include: Are You There (AYT) - Lets the user request that something appear on the terminal screen to indicate that the VTY session is active. Erase Line (EL) - Deletes all text from the current line. Interrupt Process (IP) - Suspends, interrupts, aborts, or terminates the process to which the Virtual Terminal is connected. For example, if a user started a program on the Telnet server via the VTY, he or she could send an IP command to stop the program. Drawback: Not secure (Plaintext) only authentication Secure Shell (SSH) = encryption

Telnet/SSH Client (putty)

Summary Khon Kaen University CS 322 222 4-46 2013 Chakchai So-In

Thank you and Questions? Khon Kaen University CS 322 222 4-47 2013 Chakchai So-In