SlideShare a Scribd company logo
1 of 33
Application Protocols




                        1
Network applications: some jargon

• A process is a program that is   • A user agent is an
  running within a host.             interface between the
• Within the same host, two          user and the network
  processes communicate with
                                     application.
  inter process communication
  defined by the OS.                  – Web:browser
• Processes running in different      – E-mail: mail reader
  hosts communicate with an           – streaming
  application-layer protocol            audio/video: media
                                        player
                                                          2
Applications and application-layer protocols

Application: communicating, distributed     application
                                            transport
  processes                                  network
                                             data link
    – running in network hosts in “user      physical

       space”
    – exchange messages to
       implement app
    – e.g., email, file transfer, the Web
Application-layer protocols
    – one “piece” of an app
    – define messages exchanged by                    application
                                                                    application
                                                                    transport
       apps and actions taken                         transport
                                                       network
                                                                     network
                                                                     data link
                                                       data link
    – user services provided by lower                  physical
                                                                     physical

       layer protocols

                                                                                  3
Client-server paradigm

Typical network app has two                 application

   pieces: client and server                transport
                                             network
                                             data link
                                             physical
Client:
Ì initiates contact with server (“speaks                  request
    first”)
Ì typically requests service from
    server,
Ì for Web, client is implemented in
                                                                                 reply
    browser; for e-mail, in mail reader
Server:                                                                           application
                                                                                  transport
Ì provides requested service to client                                             network
                                                                                   data link
Ì e.g., Web server sends requested                                                 physical

    Web page, mail server delivers e-mail
                                                                2: Application Layer     44
Application-layer protocols (cont).
                                   Q: how does a process “identify”
API: application programming          the other process with which it
  interface                           wants to communicate?
• defines interface between            – IP address of host running
                                          other process
  application and transport            – “port number” - allows
  layer                                   receiving host to determine
                                          to which local process the
• socket: Internet API                    message should be
  – two processes communicate             delivered
    by sending data into socket,
    reading data out of socket

                                                                5
What transport service does an application need?


Data loss
• some apps (e.g., audio) can tolerate some loss
• other apps (e.g., file transfer, telnet) require 100% reliable data transfer
Bandwidth
• some apps (e.g., multimedia) require minimum amount of bandwidth to
   be “effective”
• other apps (“elastic apps”) make use of whatever bandwidth they get
Timing
•   some apps (e.g., Internet telephony, interactive games) require low delay
    to be “effective”




                                                                          6
The Web: some jargon
• Web page:
   – consists of “objects”
   – addressed by a URL
• Most Web pages consist of:
   – base HTML page, and
   – several referenced objects.
• User agent for Web is called a browser:
   – MS Internet Explorer
   – Netscape Communicator
• Server for Web is called Web server:
   – Apache (public domain)
   – MS Internet Information Server
                                            7
The Web: the http protocol
http: hypertext transfer protocol
                                                          htt
• Web’s application layer protocol                           preq
                                          PC running              ues
                                                       htt            t
• client/server model                      Explorer
                                                          pr
                                                             e sp
                                                                 ons
    – client: browser that requests,                                 e
       receives, “displays” Web objects
                                                                     st
    – server: Web server sends objects                            ue
                                                               eq            Server
                                                          ttpr        on
                                                                         se
       in response to requests                           h
                                                                 res
                                                                     p       running
                                                              tp            NCSA Web
• http1.0: RFC 1945                                        ht
                                                                              server
• http1.1: RFC 2068
                                           Mac running
                                            Navigator

                                                                                8
The http protocol: more
http: TCP transport service:                http is “stateless”
• client initiates TCP connection           • server maintains no
   (creates socket) to server, port 80
                                              information about past
• server accepts TCP connection from          client requests
   client
• http messages (application-layer       Protocols that maintain “state”
                                            are complex!
   protocol messages) exchanged
                                         Ì past history (state) must be
   between browser (http client) and
                                            maintained
   Web server (http server)
                                         Ì if server/client crashes, their
• TCP connection closed                     views of “state” may be
                                            inconsistent, must be
                                            reconciled
                                                                     9
Non-persistent and persistent connections

Non-persistent                 Persistent
• HTTP/1.0                     • default for HTTP/1.1
• server parses request,       • on same TCP connection: server,
  responds, and closes TCP       parses request, responds,
  connection                     parses new request,..



   But most 1.0 browsers use parallel TCP connections.



                                                           10
http message format: request




                               11
http message format: response

  status line
   (protocol
 status code        HTTP/1.0 200 OK
status phrase)      Date: Thu, 06 Aug 1998 12:00:15 GMT
                    Server: Apache/1.3.0 (Unix)
          header    Last-Modified: Mon, 22 Jun 1998 …...
            lines   Content-Length: 6821
                    Content-Type: text/html

                    data data data data data ...
data, e.g.,
requested
 html file
                                                      12
http response status codes
   In first line in server->client response message.
   A few sample codes:
200 OK
   – request succeeded, requested object later in this message
301 Moved Permanently
   – requested object moved, new location specified later in this message
     (Location:)
400 Bad Request
   – request message not understood by server
404 Not Found
   – requested document not found on this server
505 HTTP Version Not Supported                                              13
Trying out http (client side) for yourself

1. Telnet to your favorite Web server:
  telnet www.eurecom.fr 80 Opens TCP connection to port 80
                           (default http server port) at www.eurecom.fr.
                           Anything typed in sent
                           to port 80 at www.eurecom.fr


 2. Type in a GET http request:
    GET /~ross/index.html HTTP/1.0    By typing this in (hit carriage
                                      return twice), you send
                                      this minimal (but complete)
                                      GET request to http server

 3. Look at response message sent by http server!
                                                                        14
User-server interaction: authentication
                                            client                    server
Authentication goal: control access to server    usual http request msg
   documents                                     401: authorization req.
• stateless: client must present authorization   WWW authenticate:
   in each request
• authorization: typically name, password        usual http request msg
    – authorization: header line in              + Authorization:line
       request                                   usual http response msg
    – if no authorization presented, server
       refuses access, sends
                                                 usual http request msg
         WWW authenticate:                       + Authorization:line
         header line in response                 usual http response msg   time
 Browser caches name & password so
 that user does not have to repeatedly enter it.                           15
User-server interaction: cookies
                                         client                        server
•   server sends “cookie” to client in
    response msg                              usual http request msg
     Set-cookie: 1678453                      usual http response +
•   client presents cookie in later               Set-cookie: #
    requests
     cookie: 1678453                          usual http request msg
                                                    cookie: #           cookie-
•   server matches presented-cookie                                     specific
    with server-stored info                  usual http response msg     action
     – authentication
     – remembering user                       usual http request msg
        preferences, previous                                            cookie-
                                                   cookie: #
        choices                                                          specific
                                             usual http response msg      action
                                                                             16
User-server interaction: conditional GET
                                        client                        server
•   Goal: don’t send object if client
    has up-to-date stored (cached)               http request msg
    version                                  If-modified-since:        object
                                                   <date>                not
•   client: specify date of cached
                                                   http response       modified
    copy in http request                            HTTP/1.0
     If-modified-since:                          304 Not Modified
        <date>
•   server: response contains no
    object if cached copy up-to-                  http request msg
    date:                                        If-modified-since:
                                                       <date>
                                                                        object
     HTTP/1.0 304 Not                                                   modified
                                                   http response
        Modified                                  HTTP/1.1 200 OK
                                                         …
                                                                               17
                                                      <data>
Web Caches (proxy server)
Goal: satisfy client request without involving origin server                   origin
• user sets browser: Web                                                       server

  accesses via web cache                  htt
                                                        Proxy
                                                                        st
                                             pr         server reque
• client sends all http requests client http equest             tp         on
                                                                              se
                                             res             ht          p
  to web cache                                   pon                 res
                                                     se          ttp   h
    – if object at web cache, web                          st
                                                        ue            htt
      cache immediately returns                     re q        se
                                                                         p    req
                                               http         pon      htt          ues
      object in http response                          re s             p   res       t
                                                    tp                          pon
                                                 ht                                 se
    – else requests object from
      origin server, then returns http    client
                                                                                          origin
      response to client                                                                  server


                                                                                              18
Why Web Caching?
                                                                        origin
Assume: cache is “close” to                                           servers
  client (e.g., in same network)                  public
                                                 Internet
• smaller response time: cache
  “closer” to client
                                                        1.5 Mbps
• decrease traffic to distant                           access link
  servers                              institutional
                                         network
   – link out of institutional/local                        10 Mbps LAN

     ISP network often bottleneck

                                                             institutional
                                                                cache
                                                                          19
ftp: the file transfer protocol
                             FTP                   file transfer
                                     FTP                            FTP
                             user   client                         server
                          interface
               user
              at host                 local file                            remote file
                                      system                                system


•   transfer file to/from remote host
•   client/server model
     – client: side that initiates transfer (either to/from remote)
     – server: remote host
•   ftp: RFC 959
•   ftp server: port 21
                                                                                          20
ftp: separate control, data connections

•   ftp client contacts ftp server at port 21,            TCP control connection
    specifying TCP as transport protocol                         port 21
•   two parallel TCP connections opened:
     – control: exchange commands,                        TCP data connection
        responses between client, server.         FTP           port 20          FTP
           “out of band control”                 client                         server
     – data: file data to/from server
•   ftp server maintains “state”: current
    directory, earlier authentication



                                                                                   21
ftp commands, responses
Sample commands:                            Sample return codes
• sent as ASCII text over control channel   • status code and phrase (as in
• USER username                                http)
• PASS password                             • 331 Username OK,
• LIST return list of file in current          password required
   directory                                • 125 data connection
• RETR filename retrieves (gets) file          already open;
                                               transfer starting
• STOR filename stores (puts) file
                                            • 425 Can’t open data
   onto remote host
                                               connection
                                            • 452 Error writing
                                               file

                                                                       22
outgoing
                                                               message queue

                                 Electronic Mail     user
                                                                user mailbox

                                                    agent
Three major components:                     mail
                                                                       user
• user agents                              server
                                                                      agent
• mail servers                                       SMTP     mail
• simple mail transfer protocol: smtp                        server      user
                                          SMTP                          agent
User Agent
• a.k.a. “mail reader”                               SMTP
                                            mail                       user
• composing, editing, reading mail         server                     agent
   messages
• e.g., Eudora, Outlook, elm, Netscape                user
                                                     agent
   Messenger                                 user
• outgoing, incoming messages stored on     agent
   server
                                                                              23
Electronic Mail: mail servers
                                                   user
                                                  agent
Mail Servers                              mail
                                                                     user
• mailbox contains incoming              server
                                                                    agent
  messages (yet to be read) for user
                                                   SMTP     mail
• message queue of outgoing (to be
                                                           server      user
  sent) mail messages
                                        SMTP                          agent
• smtp protocol between mail
  servers to send email messages                   SMTP
                                          mail                       user
    – client: sending mail server                                   agent
                                         server
    – “server”: receiving mail server
                                                    user
                                                   agent
                                           user
                                          agent

                                                                        24
Electronic Mail: smtp [RFC 821]
•   uses tcp to reliably transfer email msg from client to server, port 25
•   direct transfer: sending server to receiving server
•   three phases of transfer
     – handshaking (greeting)
     – transfer of messages
     – closure
•   command/response interaction
     – commands: ASCII text
     – response: status code and phrase
•   messages must be in 7-bit ASCII


                                                                             25
smtp: final words
•   smtp uses persistent connections          Comparison with http
•   smtp requires that message (header &      •   http: pull
    body) be in 7-bit ascii
                                              •   email: push
•   certain character strings are not
    permitted in message (e.g.,               •   both have ASCII
    CRLF.CRLF). Thus message has to be            command/response interaction,
    encoded (usually into either base-64 or       status codes
    quoted printable)
                                              •   http: each object is encapsulated
•   smtp server uses CRLF.CRLF to
                                                  in its own response message
    determine end of message
                                              •   smtp: multiple objects message
                                                  sent in a multipart message


                                                                             26
Mail message format
smtp: protocol for exchanging          header
                                                 blank
   email msgs
                                                  line
RFC 822: standard for text
   message format:
• header lines, e.g.,                   body
    – To:
    – From:
    – Subject:
    different from smtp
       commands!
• body
    – the “message”, ASCII
       characters only
                                                  27
Mail access protocols
                          SMTP            SMTP                  POP3 or    user
                   user
                  agent                                          IMAP     agent


                             sender’s mail        receiver’s mail
                                server                server

•   SMTP: delivery/storage to receiver’s server
•   Mail access protocol: retrieval from server
     – POP: Post Office Protocol [RFC 1939]
           • authorization (agent <-->server) and download
     – IMAP: Internet Mail Access Protocol [RFC 1730]
           • more features (more complex)
           • manipulation of stored msgs on server
     – HTTP: Hotmail , Yahoo! Mail, etc.

                                                                                  28
POP3 protocol
                                     S:
                                     C:
                                          +OK POP3 server ready
                                          user alice
                                     S:   +OK
                                     C:   pass hungry
authorization phase                  S:   +OK user successfully logged   on
• client commands:                   C:   list
    – user: declare username         S:   1 498
    – pass: password                 S:   2 912
                                     S:   .
• server responses                   C:   retr 1
    – +OK                            S:   <message 1 contents>
    – -ERR                           S:   .
                                     C:   dele 1
transaction phase, client:           C:   retr 2
• list: list message numbers         S:   <message 1 contents>
• retr: retrieve message by number   S:   .
                                     C:   dele 2
• dele: delete                       C:   quit
• quit                               S:   +OK POP3 server signing off
                                                                    29
What is SNMP?

• SNMP is a tool (protocol) that allows for remote and local
  management of items on the network including servers,
  workstations, routers, switches and other managed
  devices.
• Comprised of agents and managers
    •Agent - process running on each managed node collecting
     information about the device it is running on.


     •Manager - process running on a management workstation that
     requests information about devices on the network.



                                                                   30
Advantages of using SNMP
•   Standardized
•   universally supported
•   extendible
•   portable
•   allows distributed management access
•   lightweight protocol


                                           31
Client Pull & Server Push

• SNMP is a “client pull” model
     The management system (client) “pulls” data from the
     agent (server).


   SNMP is a “server push” model
     The agent (server) “pushes” out a trap message to a
     (client) management system


                                                            32
The Three Parts of SNMP

SNMP network management is based on three parts:
  •SNMP Protocol

      •Defines format of messages exchanged by management
      systems and agents.
      •Specifies the Get, GetNext, Set, and Trap operations

    •Structure of Management Information (SMI)
      •Rules specifying the format used to define objects managed
      on the network that the SNMP protocol accesses

    •Management Information Base (MIB)
       •A map of the hierarchical order of all managed objects and
       how they are accessed

                                                                     33

More Related Content

What's hot

What's hot (20)

Application layer
Application layerApplication layer
Application layer
 
Chapter3
Chapter3Chapter3
Chapter3
 
Jaimin chp-7 - application layer- 2011 batch
Jaimin   chp-7 - application layer- 2011 batchJaimin   chp-7 - application layer- 2011 batch
Jaimin chp-7 - application layer- 2011 batch
 
Application layer
Application layerApplication layer
Application layer
 
Application layer
Application layerApplication layer
Application layer
 
CCNA 1 Routing and Switching v5.0 Chapter 10
CCNA 1 Routing and Switching v5.0 Chapter 10CCNA 1 Routing and Switching v5.0 Chapter 10
CCNA 1 Routing and Switching v5.0 Chapter 10
 
Application layer protocol
Application layer protocolApplication layer protocol
Application layer protocol
 
Introduction to Application layer
Introduction to Application layerIntroduction to Application layer
Introduction to Application layer
 
Application layer
Application layerApplication layer
Application layer
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
Application layer
Application layerApplication layer
Application layer
 
Application Layer
Application Layer Application Layer
Application Layer
 
Chapter 2 : Application Layer
Chapter 2 : Application LayerChapter 2 : Application Layer
Chapter 2 : Application Layer
 
Application Layer
Application LayerApplication Layer
Application Layer
 
TCP / IP Services and Standards
TCP / IP Services and StandardsTCP / IP Services and Standards
TCP / IP Services and Standards
 
20CS2008 Computer Networks
20CS2008 Computer Networks 20CS2008 Computer Networks
20CS2008 Computer Networks
 
Unit 5 application layer
Unit 5 application layerUnit 5 application layer
Unit 5 application layer
 
Chapter 2 v6.3
Chapter 2 v6.3Chapter 2 v6.3
Chapter 2 v6.3
 
Application layer
Application layerApplication layer
Application layer
 
Application layer
Application layerApplication layer
Application layer
 

Viewers also liked

The Public Sector Director and Executive Level Leadership Forum
The Public Sector Director and Executive Level Leadership ForumThe Public Sector Director and Executive Level Leadership Forum
The Public Sector Director and Executive Level Leadership ForumShari Borodkin
 
Application Layer
Application LayerApplication Layer
Application Layerrosmida
 
HyperText Transfer Protocol
HyperText Transfer ProtocolHyperText Transfer Protocol
HyperText Transfer Protocolponduse
 
8 Authentication Security Protocols
8 Authentication Security Protocols8 Authentication Security Protocols
8 Authentication Security Protocolsguestfbf635
 
Introduction to Information Security
Introduction to Information SecurityIntroduction to Information Security
Introduction to Information SecurityDr. Loganathan R
 
HyperText Transfer Protocol (HTTP)
HyperText Transfer Protocol (HTTP)HyperText Transfer Protocol (HTTP)
HyperText Transfer Protocol (HTTP)Gurjot Singh
 
International trade
International tradeInternational trade
International tradeOnline
 
Internet protocol (ip) ppt
Internet protocol (ip) pptInternet protocol (ip) ppt
Internet protocol (ip) pptDulith Kasun
 
Components of a Data-Warehouse
Components of a Data-WarehouseComponents of a Data-Warehouse
Components of a Data-WarehouseAbdul Aslam
 
International Trade Theories
International Trade TheoriesInternational Trade Theories
International Trade Theoriesshanmugapriya
 

Viewers also liked (16)

The Public Sector Director and Executive Level Leadership Forum
The Public Sector Director and Executive Level Leadership ForumThe Public Sector Director and Executive Level Leadership Forum
The Public Sector Director and Executive Level Leadership Forum
 
SSL Technology
SSL TechnologySSL Technology
SSL Technology
 
List of Malwares
List of MalwaresList of Malwares
List of Malwares
 
Application Layer
Application LayerApplication Layer
Application Layer
 
HTTP
HTTPHTTP
HTTP
 
HyperText Transfer Protocol
HyperText Transfer ProtocolHyperText Transfer Protocol
HyperText Transfer Protocol
 
8 Authentication Security Protocols
8 Authentication Security Protocols8 Authentication Security Protocols
8 Authentication Security Protocols
 
Virus and worms
Virus and wormsVirus and worms
Virus and worms
 
Osi model 7 Layers
Osi model 7 LayersOsi model 7 Layers
Osi model 7 Layers
 
Introduction to Information Security
Introduction to Information SecurityIntroduction to Information Security
Introduction to Information Security
 
HyperText Transfer Protocol (HTTP)
HyperText Transfer Protocol (HTTP)HyperText Transfer Protocol (HTTP)
HyperText Transfer Protocol (HTTP)
 
Osi model
Osi modelOsi model
Osi model
 
International trade
International tradeInternational trade
International trade
 
Internet protocol (ip) ppt
Internet protocol (ip) pptInternet protocol (ip) ppt
Internet protocol (ip) ppt
 
Components of a Data-Warehouse
Components of a Data-WarehouseComponents of a Data-Warehouse
Components of a Data-Warehouse
 
International Trade Theories
International Trade TheoriesInternational Trade Theories
International Trade Theories
 

Similar to Application protocols

Materi Perkuliahan Jaringan Komputer Teknik Informatika Chapter 2
Materi Perkuliahan Jaringan Komputer Teknik Informatika Chapter 2Materi Perkuliahan Jaringan Komputer Teknik Informatika Chapter 2
Materi Perkuliahan Jaringan Komputer Teknik Informatika Chapter 2Raga Yustia
 
Computer Networks Module 1-part 1.pdf
Computer Networks Module 1-part 1.pdfComputer Networks Module 1-part 1.pdf
Computer Networks Module 1-part 1.pdfShanthalaKV
 
Web-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxWeb-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxAlokKumar250045
 
CS3001_Computer_Networks_Chapter_2_v8.1(1).pptx
CS3001_Computer_Networks_Chapter_2_v8.1(1).pptxCS3001_Computer_Networks_Chapter_2_v8.1(1).pptx
CS3001_Computer_Networks_Chapter_2_v8.1(1).pptxfarhanali32014
 
Part 1 network computing
Part 1 network computingPart 1 network computing
Part 1 network computingLinh Nguyen
 
2. application layer
2. application layer2. application layer
2. application layerTageleBerihun
 
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...Weijun Qin
 
Lecture 11 client_server_interaction
Lecture 11 client_server_interactionLecture 11 client_server_interaction
Lecture 11 client_server_interactionSerious_SamSoul
 
Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxhishamousl
 
Chapter2 application layer
Chapter2 application layerChapter2 application layer
Chapter2 application layerKhánh Ghẻ
 
Load Balancing und Beschleunigung mit Citrix Net Scaler
Load Balancing und Beschleunigung mit Citrix Net ScalerLoad Balancing und Beschleunigung mit Citrix Net Scaler
Load Balancing und Beschleunigung mit Citrix Net ScalerDigicomp Academy AG
 

Similar to Application protocols (20)

App layer
App layerApp layer
App layer
 
Chapter2[one.]
Chapter2[one.]Chapter2[one.]
Chapter2[one.]
 
3rd edition chapter2
3rd edition chapter23rd edition chapter2
3rd edition chapter2
 
Materi Perkuliahan Jaringan Komputer Teknik Informatika Chapter 2
Materi Perkuliahan Jaringan Komputer Teknik Informatika Chapter 2Materi Perkuliahan Jaringan Komputer Teknik Informatika Chapter 2
Materi Perkuliahan Jaringan Komputer Teknik Informatika Chapter 2
 
Chapter2 application
Chapter2 applicationChapter2 application
Chapter2 application
 
Week3 applications
Week3 applicationsWeek3 applications
Week3 applications
 
Computer Networks Module 1-part 1.pdf
Computer Networks Module 1-part 1.pdfComputer Networks Module 1-part 1.pdf
Computer Networks Module 1-part 1.pdf
 
Chapter1 sept 8_05[one.]
Chapter1 sept 8_05[one.]Chapter1 sept 8_05[one.]
Chapter1 sept 8_05[one.]
 
Web-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptxWeb-Server & It's Architecture.pptx
Web-Server & It's Architecture.pptx
 
CS3001_Computer_Networks_Chapter_2_v8.1(1).pptx
CS3001_Computer_Networks_Chapter_2_v8.1(1).pptxCS3001_Computer_Networks_Chapter_2_v8.1(1).pptx
CS3001_Computer_Networks_Chapter_2_v8.1(1).pptx
 
3rd edition chapter1
3rd edition chapter13rd edition chapter1
3rd edition chapter1
 
Part 1 network computing
Part 1 network computingPart 1 network computing
Part 1 network computing
 
2. application layer
2. application layer2. application layer
2. application layer
 
Chapter2 Application
Chapter2 ApplicationChapter2 Application
Chapter2 Application
 
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
RestThing: A Restful Web Service Infrastructure for Mash-up Physical and Web ...
 
Lecture 11 client_server_interaction
Lecture 11 client_server_interactionLecture 11 client_server_interaction
Lecture 11 client_server_interaction
 
Introduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptxIntroduction to the Internet and Web.pptx
Introduction to the Internet and Web.pptx
 
Cliser
CliserCliser
Cliser
 
Chapter2 application layer
Chapter2 application layerChapter2 application layer
Chapter2 application layer
 
Load Balancing und Beschleunigung mit Citrix Net Scaler
Load Balancing und Beschleunigung mit Citrix Net ScalerLoad Balancing und Beschleunigung mit Citrix Net Scaler
Load Balancing und Beschleunigung mit Citrix Net Scaler
 

More from Online

Philosophy of early childhood education 3
Philosophy of early childhood education 3Philosophy of early childhood education 3
Philosophy of early childhood education 3Online
 
Philosophy of early childhood education 2
Philosophy of early childhood education 2Philosophy of early childhood education 2
Philosophy of early childhood education 2Online
 
Philosophy of early childhood education 1
Philosophy of early childhood education 1Philosophy of early childhood education 1
Philosophy of early childhood education 1Online
 
Philosophy of early childhood education 4
Philosophy of early childhood education 4Philosophy of early childhood education 4
Philosophy of early childhood education 4Online
 
Operation and expression in c++
Operation and expression in c++Operation and expression in c++
Operation and expression in c++Online
 
Functions
FunctionsFunctions
FunctionsOnline
 
Formatted input and output
Formatted input and outputFormatted input and output
Formatted input and outputOnline
 
Control structures selection
Control structures   selectionControl structures   selection
Control structures selectionOnline
 
Control structures repetition
Control structures   repetitionControl structures   repetition
Control structures repetitionOnline
 
Introduction to problem solving in c++
Introduction to problem solving in c++Introduction to problem solving in c++
Introduction to problem solving in c++Online
 
Optical transmission technique
Optical transmission techniqueOptical transmission technique
Optical transmission techniqueOnline
 
Multi protocol label switching (mpls)
Multi protocol label switching (mpls)Multi protocol label switching (mpls)
Multi protocol label switching (mpls)Online
 
Lan technologies
Lan technologiesLan technologies
Lan technologiesOnline
 
Introduction to internet technology
Introduction to internet technologyIntroduction to internet technology
Introduction to internet technologyOnline
 
Internet standard routing protocols
Internet standard routing protocolsInternet standard routing protocols
Internet standard routing protocolsOnline
 
Internet protocol
Internet protocolInternet protocol
Internet protocolOnline
 
Addressing
AddressingAddressing
AddressingOnline
 
Transport protocols
Transport protocolsTransport protocols
Transport protocolsOnline
 
Leadership
LeadershipLeadership
LeadershipOnline
 
Introduction to management
Introduction to managementIntroduction to management
Introduction to managementOnline
 

More from Online (20)

Philosophy of early childhood education 3
Philosophy of early childhood education 3Philosophy of early childhood education 3
Philosophy of early childhood education 3
 
Philosophy of early childhood education 2
Philosophy of early childhood education 2Philosophy of early childhood education 2
Philosophy of early childhood education 2
 
Philosophy of early childhood education 1
Philosophy of early childhood education 1Philosophy of early childhood education 1
Philosophy of early childhood education 1
 
Philosophy of early childhood education 4
Philosophy of early childhood education 4Philosophy of early childhood education 4
Philosophy of early childhood education 4
 
Operation and expression in c++
Operation and expression in c++Operation and expression in c++
Operation and expression in c++
 
Functions
FunctionsFunctions
Functions
 
Formatted input and output
Formatted input and outputFormatted input and output
Formatted input and output
 
Control structures selection
Control structures   selectionControl structures   selection
Control structures selection
 
Control structures repetition
Control structures   repetitionControl structures   repetition
Control structures repetition
 
Introduction to problem solving in c++
Introduction to problem solving in c++Introduction to problem solving in c++
Introduction to problem solving in c++
 
Optical transmission technique
Optical transmission techniqueOptical transmission technique
Optical transmission technique
 
Multi protocol label switching (mpls)
Multi protocol label switching (mpls)Multi protocol label switching (mpls)
Multi protocol label switching (mpls)
 
Lan technologies
Lan technologiesLan technologies
Lan technologies
 
Introduction to internet technology
Introduction to internet technologyIntroduction to internet technology
Introduction to internet technology
 
Internet standard routing protocols
Internet standard routing protocolsInternet standard routing protocols
Internet standard routing protocols
 
Internet protocol
Internet protocolInternet protocol
Internet protocol
 
Addressing
AddressingAddressing
Addressing
 
Transport protocols
Transport protocolsTransport protocols
Transport protocols
 
Leadership
LeadershipLeadership
Leadership
 
Introduction to management
Introduction to managementIntroduction to management
Introduction to management
 

Recently uploaded

Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.MateoGardella
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 

Recently uploaded (20)

Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 

Application protocols

  • 2. Network applications: some jargon • A process is a program that is • A user agent is an running within a host. interface between the • Within the same host, two user and the network processes communicate with application. inter process communication defined by the OS. – Web:browser • Processes running in different – E-mail: mail reader hosts communicate with an – streaming application-layer protocol audio/video: media player 2
  • 3. Applications and application-layer protocols Application: communicating, distributed application transport processes network data link – running in network hosts in “user physical space” – exchange messages to implement app – e.g., email, file transfer, the Web Application-layer protocols – one “piece” of an app – define messages exchanged by application application transport apps and actions taken transport network network data link data link – user services provided by lower physical physical layer protocols 3
  • 4. Client-server paradigm Typical network app has two application pieces: client and server transport network data link physical Client: Ì initiates contact with server (“speaks request first”) Ì typically requests service from server, Ì for Web, client is implemented in reply browser; for e-mail, in mail reader Server: application transport Ì provides requested service to client network data link Ì e.g., Web server sends requested physical Web page, mail server delivers e-mail 2: Application Layer 44
  • 5. Application-layer protocols (cont). Q: how does a process “identify” API: application programming the other process with which it interface wants to communicate? • defines interface between – IP address of host running other process application and transport – “port number” - allows layer receiving host to determine to which local process the • socket: Internet API message should be – two processes communicate delivered by sending data into socket, reading data out of socket 5
  • 6. What transport service does an application need? Data loss • some apps (e.g., audio) can tolerate some loss • other apps (e.g., file transfer, telnet) require 100% reliable data transfer Bandwidth • some apps (e.g., multimedia) require minimum amount of bandwidth to be “effective” • other apps (“elastic apps”) make use of whatever bandwidth they get Timing • some apps (e.g., Internet telephony, interactive games) require low delay to be “effective” 6
  • 7. The Web: some jargon • Web page: – consists of “objects” – addressed by a URL • Most Web pages consist of: – base HTML page, and – several referenced objects. • User agent for Web is called a browser: – MS Internet Explorer – Netscape Communicator • Server for Web is called Web server: – Apache (public domain) – MS Internet Information Server 7
  • 8. The Web: the http protocol http: hypertext transfer protocol htt • Web’s application layer protocol preq PC running ues htt t • client/server model Explorer pr e sp ons – client: browser that requests, e receives, “displays” Web objects st – server: Web server sends objects ue eq Server ttpr on se in response to requests h res p running tp NCSA Web • http1.0: RFC 1945 ht server • http1.1: RFC 2068 Mac running Navigator 8
  • 9. The http protocol: more http: TCP transport service: http is “stateless” • client initiates TCP connection • server maintains no (creates socket) to server, port 80 information about past • server accepts TCP connection from client requests client • http messages (application-layer Protocols that maintain “state” are complex! protocol messages) exchanged Ì past history (state) must be between browser (http client) and maintained Web server (http server) Ì if server/client crashes, their • TCP connection closed views of “state” may be inconsistent, must be reconciled 9
  • 10. Non-persistent and persistent connections Non-persistent Persistent • HTTP/1.0 • default for HTTP/1.1 • server parses request, • on same TCP connection: server, responds, and closes TCP parses request, responds, connection parses new request,.. But most 1.0 browsers use parallel TCP connections. 10
  • 11. http message format: request 11
  • 12. http message format: response status line (protocol status code HTTP/1.0 200 OK status phrase) Date: Thu, 06 Aug 1998 12:00:15 GMT Server: Apache/1.3.0 (Unix) header Last-Modified: Mon, 22 Jun 1998 …... lines Content-Length: 6821 Content-Type: text/html data data data data data ... data, e.g., requested html file 12
  • 13. http response status codes In first line in server->client response message. A few sample codes: 200 OK – request succeeded, requested object later in this message 301 Moved Permanently – requested object moved, new location specified later in this message (Location:) 400 Bad Request – request message not understood by server 404 Not Found – requested document not found on this server 505 HTTP Version Not Supported 13
  • 14. Trying out http (client side) for yourself 1. Telnet to your favorite Web server: telnet www.eurecom.fr 80 Opens TCP connection to port 80 (default http server port) at www.eurecom.fr. Anything typed in sent to port 80 at www.eurecom.fr 2. Type in a GET http request: GET /~ross/index.html HTTP/1.0 By typing this in (hit carriage return twice), you send this minimal (but complete) GET request to http server 3. Look at response message sent by http server! 14
  • 15. User-server interaction: authentication client server Authentication goal: control access to server usual http request msg documents 401: authorization req. • stateless: client must present authorization WWW authenticate: in each request • authorization: typically name, password usual http request msg – authorization: header line in + Authorization:line request usual http response msg – if no authorization presented, server refuses access, sends usual http request msg WWW authenticate: + Authorization:line header line in response usual http response msg time Browser caches name & password so that user does not have to repeatedly enter it. 15
  • 16. User-server interaction: cookies client server • server sends “cookie” to client in response msg usual http request msg Set-cookie: 1678453 usual http response + • client presents cookie in later Set-cookie: # requests cookie: 1678453 usual http request msg cookie: # cookie- • server matches presented-cookie specific with server-stored info usual http response msg action – authentication – remembering user usual http request msg preferences, previous cookie- cookie: # choices specific usual http response msg action 16
  • 17. User-server interaction: conditional GET client server • Goal: don’t send object if client has up-to-date stored (cached) http request msg version If-modified-since: object <date> not • client: specify date of cached http response modified copy in http request HTTP/1.0 If-modified-since: 304 Not Modified <date> • server: response contains no object if cached copy up-to- http request msg date: If-modified-since: <date> object HTTP/1.0 304 Not modified http response Modified HTTP/1.1 200 OK … 17 <data>
  • 18. Web Caches (proxy server) Goal: satisfy client request without involving origin server origin • user sets browser: Web server accesses via web cache htt Proxy st pr server reque • client sends all http requests client http equest tp on se res ht p to web cache pon res se ttp h – if object at web cache, web st ue htt cache immediately returns re q se p req http pon htt ues object in http response re s p res t tp pon ht se – else requests object from origin server, then returns http client origin response to client server 18
  • 19. Why Web Caching? origin Assume: cache is “close” to servers client (e.g., in same network) public Internet • smaller response time: cache “closer” to client 1.5 Mbps • decrease traffic to distant access link servers institutional network – link out of institutional/local 10 Mbps LAN ISP network often bottleneck institutional cache 19
  • 20. ftp: the file transfer protocol FTP file transfer FTP FTP user client server interface user at host local file remote file system system • transfer file to/from remote host • client/server model – client: side that initiates transfer (either to/from remote) – server: remote host • ftp: RFC 959 • ftp server: port 21 20
  • 21. ftp: separate control, data connections • ftp client contacts ftp server at port 21, TCP control connection specifying TCP as transport protocol port 21 • two parallel TCP connections opened: – control: exchange commands, TCP data connection responses between client, server. FTP port 20 FTP “out of band control” client server – data: file data to/from server • ftp server maintains “state”: current directory, earlier authentication 21
  • 22. ftp commands, responses Sample commands: Sample return codes • sent as ASCII text over control channel • status code and phrase (as in • USER username http) • PASS password • 331 Username OK, • LIST return list of file in current password required directory • 125 data connection • RETR filename retrieves (gets) file already open; transfer starting • STOR filename stores (puts) file • 425 Can’t open data onto remote host connection • 452 Error writing file 22
  • 23. outgoing message queue Electronic Mail user user mailbox agent Three major components: mail user • user agents server agent • mail servers SMTP mail • simple mail transfer protocol: smtp server user SMTP agent User Agent • a.k.a. “mail reader” SMTP mail user • composing, editing, reading mail server agent messages • e.g., Eudora, Outlook, elm, Netscape user agent Messenger user • outgoing, incoming messages stored on agent server 23
  • 24. Electronic Mail: mail servers user agent Mail Servers mail user • mailbox contains incoming server agent messages (yet to be read) for user SMTP mail • message queue of outgoing (to be server user sent) mail messages SMTP agent • smtp protocol between mail servers to send email messages SMTP mail user – client: sending mail server agent server – “server”: receiving mail server user agent user agent 24
  • 25. Electronic Mail: smtp [RFC 821] • uses tcp to reliably transfer email msg from client to server, port 25 • direct transfer: sending server to receiving server • three phases of transfer – handshaking (greeting) – transfer of messages – closure • command/response interaction – commands: ASCII text – response: status code and phrase • messages must be in 7-bit ASCII 25
  • 26. smtp: final words • smtp uses persistent connections Comparison with http • smtp requires that message (header & • http: pull body) be in 7-bit ascii • email: push • certain character strings are not permitted in message (e.g., • both have ASCII CRLF.CRLF). Thus message has to be command/response interaction, encoded (usually into either base-64 or status codes quoted printable) • http: each object is encapsulated • smtp server uses CRLF.CRLF to in its own response message determine end of message • smtp: multiple objects message sent in a multipart message 26
  • 27. Mail message format smtp: protocol for exchanging header blank email msgs line RFC 822: standard for text message format: • header lines, e.g., body – To: – From: – Subject: different from smtp commands! • body – the “message”, ASCII characters only 27
  • 28. Mail access protocols SMTP SMTP POP3 or user user agent IMAP agent sender’s mail receiver’s mail server server • SMTP: delivery/storage to receiver’s server • Mail access protocol: retrieval from server – POP: Post Office Protocol [RFC 1939] • authorization (agent <-->server) and download – IMAP: Internet Mail Access Protocol [RFC 1730] • more features (more complex) • manipulation of stored msgs on server – HTTP: Hotmail , Yahoo! Mail, etc. 28
  • 29. POP3 protocol S: C: +OK POP3 server ready user alice S: +OK C: pass hungry authorization phase S: +OK user successfully logged on • client commands: C: list – user: declare username S: 1 498 – pass: password S: 2 912 S: . • server responses C: retr 1 – +OK S: <message 1 contents> – -ERR S: . C: dele 1 transaction phase, client: C: retr 2 • list: list message numbers S: <message 1 contents> • retr: retrieve message by number S: . C: dele 2 • dele: delete C: quit • quit S: +OK POP3 server signing off 29
  • 30. What is SNMP? • SNMP is a tool (protocol) that allows for remote and local management of items on the network including servers, workstations, routers, switches and other managed devices. • Comprised of agents and managers •Agent - process running on each managed node collecting information about the device it is running on. •Manager - process running on a management workstation that requests information about devices on the network. 30
  • 31. Advantages of using SNMP • Standardized • universally supported • extendible • portable • allows distributed management access • lightweight protocol 31
  • 32. Client Pull & Server Push • SNMP is a “client pull” model The management system (client) “pulls” data from the agent (server).  SNMP is a “server push” model The agent (server) “pushes” out a trap message to a (client) management system 32
  • 33. The Three Parts of SNMP SNMP network management is based on three parts: •SNMP Protocol •Defines format of messages exchanged by management systems and agents. •Specifies the Get, GetNext, Set, and Trap operations •Structure of Management Information (SMI) •Rules specifying the format used to define objects managed on the network that the SNMP protocol accesses •Management Information Base (MIB) •A map of the hierarchical order of all managed objects and how they are accessed 33