chuong 7 - tang ung dung

Upload: tien-le

Post on 04-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    1/40

    1

    Chng 7:

    Tng ng dng

    D n HEDSPI

    Khoa CNTT- HBK H Ni

    Ging vin: Ng Hng Sn

    B mn Truyn thng v Mng my tnh

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    2/40

    2

    Tng quan

    Bui trc: Tng giao vn Nguyn l ca tng giao vn

    TCP v UDP

    Khi nim kim sot lung v kim sot tcnghn

    Hm nay: Tng ng dng

    Nguyn l ca tng ng dng Case study: HTTP, Mail, FTP

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    3/40

    3

    Khi nim c bn

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    4/40

    4

    Nhc li v kin trc phn tng

    Application

    (HTTP, Mail, )

    Transport

    (UDP, TCP )

    Network

    (IP, ICMP)

    Datalink

    (Ethernet, ADSL)

    Physical

    (bits)

    H tr cc ng dng trn mng

    Truyn d liu gia cc ng dng

    Chn ng v chuyn tip gi tin giacc my, cc mng

    H

    tr

    vic truy

    n thng cho cc thnhphn k tip trn cng 1 mng

    Truyn v nhn dng bit trn ngtruyn vt l

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    5/40

    5

    ng dng trn mng?

    CHATGAME

    ON LINE

    WEB

    MAIL

    SKYPE

    YOUTUBE

    SSHTELNET

    FTP

    VoD

    SCHOOL

    ON THEINTERNET

    GOOGLE

    BITTORENTE-COMMERCE

    EBAY

    MUSIC ONLINE

    GRID

    VIDEOCONFERENCE

    e-BANK

    VoIP

    NEWS

    SMS

    e-Office

    e-Goverment

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    6/40

    6

    ng dng v giao thc ng dng

    ng dng :

    Cc tin trnh (c giao tip vinhau) trn Internet Hot ng trn cc h thng

    cui Trao i thng ip

    Giao thc ng dng nh ngha cc quy tc giao tip S dng cc dch v giao vn

    (TCP/UDP)

    V d ng dng/giao thc: Web (HTTP)

    Mail (SMTP/POP/IMAP)

    applicationtransportnetwork

    data linkphysical

    applicationtransportnetworkdata linkphysical

    applicationtransport

    networkdata linkphysical

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    7/40

    7

    Cc thnh phn ca ng dng

    Giao din NSD: H tr cho NSD lm vic vi ng dng, e.g. trnh duyt

    Web (Firefox, IE), chng trnh gi th (Thunderbird,Outlook,..)

    Ci t cc giao thc v s dng dch v giao vn

    Tin trnh ng dng: mt chng trnh ang chy

    Cc tin trnh giao tip ntn?

    Trn mt my: IPC (inter-process communication) Gia cc my trn mng: Giao thc ng dng

    Socket

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    8/40

    8

    Giao tip gia cc tin trnh trnInternet

    Nhc li: Socket l mt giao

    din gia tin trnh ng dngv tng giao vn Socket c nh danh bi

    S hiu cng

    a chIP Kiu giao thc giao vn

    (TCP hay UDP)

    Socket API (Application

    Programming Interface): Chophp cc tin trnh la chntham s, la chn dch v

    process

    transportlayer

    services

    socket

    host orserver

    process

    transport

    layerservices

    socket

    host orserver

    Internet

    controlled by

    app developer

    controlled

    by OS

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    9/40

    9

    Cc m hnh ng dng

    Khch-ch

    P2P

    M hnh lai

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    10/40

    10

    M hnh khch ch Khch

    Gi yu cu truy cp dch vn my ch

    C th c a chIP ng hayvo mng khng thng xuyn

    V nguyn tc, khng lin lctrc tip vi cc my khch

    khc Ch

    Thng xuyn online a chIP tnh

    C th c my ch d phng nng cao hiu nng, phng sc

    e.g. Web, Mail,

    client

    client

    client

    client

    Server

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    11/40

    11

    M hnh im-im thun ty Khng c my ch trung tm

    Cc my c vai tr ngangnhau

    Hai my bt k c th lin lctrc tip vi nhau

    C th c IP ng, khng cnvo mng thng xuyn

    E.g. Gnutella

    PeerPeer

    Peer

    Peer Peer

    Peer

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    12/40

    12

    M hnh lai

    Mt my ch trung tm

    qun l NSD, thngtin tm kim Cc my khch s giao

    tip trc tip vi nhau

    sau khi ng nhp E.g. Skype

    My ch Skype qun lcc phin ng nhp, mt

    khu Sau khi kt ni, cc my

    s gi VoIP trc tip chonhau

    Server

    Client

    Client

    Client

    Client-Server Comm.

    P2P Comm.

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    13/40

    13

    Case study 1: HTTP v WWW

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    14/40

    14

    HTTP v Web

    WWW: World Wide Web

    trao i ti liu siu vn bnHTML (HyperText MarkupLanguage) trn Internet

    HTTP: HyperText Transfer

    Protocol M hnh Client/Server

    Client yu cu truy nhp ti cctrang web (cc i tng web)

    v hin th chng ln trnh duyt Server: Nhn yu cu v tr li

    cho client

    httprequest

    httprequ

    est

    http

    resp

    onse

    httpresponse

    Web clients

    Web

    server

    IE

    Firefox

    Navigator

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    15/40

    15

    HTTP hot ng ntn?

    Server m mt TCP socket ch ti cng 80 (default)

    Client khi to mt lin kt TCP ti server Server chp nhn yu cu to lin kt

    Trao i thng ip HTTP (giao thc ng dng) HTTP Request

    HTTP Response

    ng lin kt TCP

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    16/40

    16

    Khun dng HTTP request

    M ASCII (d dng c c di dng vn bn)

    GET /dccn/index.html HTTP/1.1

    Host: www.it-hut.edu.vn

    User-agent: Mozilla/4.0

    Connection: close

    Accept-language:en-us

    (extra carriage return, line feed)

    request line(GET, POST,

    HEAD commands)

    headerlines

    CR, LF

    indicates endof message

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    17/40

    17

    Khun dng HTTP response

    HTTP/1.1 200 OK

    Connection close

    Date: Tue, 16 Mar 2008 12:00:15 GMT

    Server: Apache/1.3.0 (Unix)

    Last-Modified: Mon, 15 Mar 2008 ...Content-Length: 8990

    Content-Type: text/html

    data data data data data ...

    status line

    (protocolstatus codestatus phrase)

    headerlines

    data, e.g.,requestedHTML file

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    18/40

    18

    Cc lin kt HTTP

    HTTP khng duy tr

    Chmt i tng webc gi qua lin ktTCP

    S dng mc nhtrong HTTP/1.0

    HTTP 1.0: RFC 1945

    HTTP c duy tr

    Nhiu i tng c thc gi qua mt linkt TCP.

    S dng mc nhtrong HTTP/1.1

    HTTP 1.1: RFC 2068

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    19/40

    19

    Hot ng ca HTTP/1.0

    Time Time

    Web client Web server

    TCPConn.Req.

    GET/index.html

    index.html

    Accepted

    Init TCP connection

    Send HTTP response: index.html

    Close TCP connection

    OK, send HTTP request

    Accept TCP connection

    GETimg1.jpg

    Parse index.html: has 10reference to 10 images

    Repeat above steps 10times!

    Send images 1

    Close TCP connection

    TCPConn.Req.

    img1.jpg

    Accept TCP connection

    2xRTT

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    20/40

    20

    Hot ng ca HTTP/1.1

    Time Time

    Web client Web server

    TCPConn.Req.

    GET/index.html

    GET

    index.html

    Accepted

    Init TCP connection

    Send HTTP

    response: index.html

    OK, send HTTP request

    Accept TCP connection

    GET

    img1.jpg

    request images 2

    Parse index.html: has 10reference to 10 images

    request images 1

    Send images 1

    Send images 2

    request images 10

    Stop-and-

    wait!

    Pipeline

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    21/40

    21

    HTTP/1.1 vi pipeline

    Time Time

    Web client Web server

    TCPConn.Req.

    GET/index.html

    GET

    index.htm

    l

    Accepted

    Init TCP connection

    Send HTTP

    response: index.html

    OK, send HTTP request

    Accept TCP connection

    Parse index.html: has 10reference to 10 images

    request images 1 -10

    Send images 1-10

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    22/40

    22

    Cc phng thc trong thng

    ip yu cu

    HTTP/1.0

    GET POST

    HEAD

    yu cu my ch loi mts i tng ra khi thngip tr li

    HTTP/1.1

    GET, POST, HEAD PUT

    ti file ln my ch, ngdn chra trong URL, file

    trong body DELETE

    Xa file chra bi ngdn

    Lu : C 2 cch gi tham s n server: POST hoc GET

    http://www.google.com/search?q=computer+network&flags=68&num=10

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    23/40

    23

    M trng thi tr li

    200 OK

    request succeeded, requested object later inthis message

    301 Moved Permanently requested object moved, new location specified

    later in this message (Location:)

    400 Bad Request

    request message not understood by server404 Not Found

    requested document not found on this server

    505 HTTP Version Not Supported

    Trong dng u tin ca thng ip tr li, v d

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    24/40

    24

    B m- Caching Cache: B nh m

    Khi nim b nh cachetrong my tnh L1 cache, L2 cache

    cache miss, cache hit

    Xem xt trng hp sau: Mt t chc c mt ng

    ni ti Internet Tt c lu lng truy cp

    web u i qua lin kt ny Nhiu NSD web c th

    cng truy nhp ti cng mtni dung

    Gii php ci tin?

    www.xyz.com/index.htm

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    25/40

    25

    S dng b m web - proxy

    NSD t tham s kt nitruy cp web ca trnh

    duyt qua mt my chproxy

    trnh duyt gi yu cun proxy Miss: Proxy gi yu cu

    ti my ch web, tr litrnh duyt v lu mi tng web

    Hit: Proxy tr i tngweb cho trnh duyt

    client

    Proxyserver

    client

    HTTP

    reques

    t

    HTTP

    respon

    se

    HTTPrequest H

    TTPreq

    uest

    Web

    server

    HTTPresponse HTT

    Prespons

    e

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    26/40

    26

    Web caches

    Proxy: Va l client, va l server

    S dng bi cc ISP nh, cc t chc nh trnghc, cng ty

    nh hng ca proxy Lm gim lu lng web trn ng ra Internet C th lm gim thi gian p ng

    Th phn tch vi trng hp

    cache hit cache miss

    proxy b qu ti

    Trang web thay i/trang web ng?

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    27/40

    27

    Phng thc GET c iu kin Mc ch: My ch s

    khng gi i tng webnu proxy cn lu gi thngtin cp nht

    Proxy: chra thi gian cca i tng

    If-modified-since:

    server: Xc nhn li c thayi hay khng:

    HTTP/1.0 304 Not Modified

    proxy server

    HTTP request msgIf-modified-since:

    HTTP responseHTTP/1.0

    304 Not Modified

    objectnot

    modified

    HTTP request msgIf-modified-since:

    HTTP responseHTTP/1.0 200 OK

    objectmodified

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    28/40

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    29/40

    29

    Th in t Chng trnh c/son tho th

    Ly th t my ch, gi th nmy ch

    e.g. Outlook, Thunderbird

    My ch th in t: Cha hp th n ca NSD (mail

    box) Hng i gi th i e.g. Sendmail, MS Exchange

    useragent

    mailserver

    mailserver user

    agent

    Giao thc:

    Chuyn th: STMP-SimpleMail Transfer Protocol

    nhn th POP Post Office Protocol

    IMAP Internet MailAccess Protocol

    SMTPPOP

    IMAP

    Mail box Message queue

    IMAP

    POP

    SMTPSMTP

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    30/40

    30

    Giao thc SMTP

    RFC 2821

    TCP, port 25: Chuyn th t client n server vgia cc server vi nhau 3 giai on

    Lp lin kt Chuyn th ng lin kt

    Tng tc yu cu/tr li Yu cu: Lnh vi m ASCII Tr li: m trng thi v d liu

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    31/40

    31

    Cc giao thc nhn th

    POP: Post Office Protocol [RFC 1939]

    ng nhp v ly ht th v

    IMAP: Internet Mail Access Protocol [RFC 1730]

    Phc tp hn POP Cho php lu tr v x l th trn my ch

    Quota?

    HTTP: gmail, Hotmail, Yahoo! Mail, etc.

    useragent

    senders mailserver

    useragent

    SMTP SMTP accessprotocol

    receivers mailserver

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    32/40

    32

    Khun dng thng ip th in

    tSMTP: Giao thc truyn

    thRFC 822: nh ngha khundng

    Phn u To:

    From:

    Subject:

    Phn thn m ha di dng m

    ASCII

    header

    body

    blankline

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    33/40

    33

    chuyn d liu a phng tin:

    multimedia extensions MIME: multimedia mail extension, RFC 2045, 2056

    Thm mt dng trong phn u chr khun dng d

    liu gi i

    From: [email protected]: [email protected]: Picture of yummy crepe.MIME-Version: 1.0Content-Transfer-Encoding: base64Content-Type: image/jpeg

    base64 encoded data ....................................base64 encoded data

    multimedia datatype, subtype,

    parameter declaration

    method usedto encode data

    MIME version

    encoded data

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    34/40

    34

    Case Study 3

    ng dng truyn tp

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    35/40

    35

    FTP: File Transfer Protocol

    M hnh Client-server

    Trao i file gia cc my

    RFC 959 S dng TCP, cng 20, 21

    TCP dataconnection, port 20

    FTP

    server

    user

    interface

    FTP

    client

    local file system remote file system

    user

    TCP controlconnection, port 21

    iu khin Out-of-band : Lnh ca FTP : cng 21

    D

    li

    u: cng 20

    NSD phi ng nhp trc khitruyn file

    Mt s server cho php NSD

    vi tn l anonymous

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    36/40

    36

    Lnh v m tr li

    Mt s v d USER username

    PASS password

    LIST : tr v danh schfile

    RETR filename Ly file

    STOR filename t fileln my ch

    V d v m tr li 331 Username OK,

    password required

    125 data connectionalready open; transfer

    starting

    425 Cant open dataconnection

    452 Error writing file

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    37/40

    37

    V d v ftp client

    C:\Documents and Settings\hongson>ftpftp> ?

    Commands may be abbreviated. Commands are:

    ! delete literal prompt send

    ? debug ls put statusappend dir mdelete pwd traceascii disconnect mdir quit typebell get mget quote userbinary glob mkdir recv verbose

    bye hash mls remotehelpcd help mput rename

    close lcd open rmdir

    Command line

    GUI FTP clients: IE, Firefox, GFTP, .

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    38/40

    38

    Tm tt

    M hnh ng dng

    Client-server vs. P2P Mt s ng dng v giao thc

    HTTP

    Mail FTP

    V nh, hy tm hiu thm

    P2P

    Giao din lp trnh Socket

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    39/40

    39

    Bui hc ti: Data-link Layer Cc nguyn l tng Data-link

    Mng LAN

  • 7/29/2019 Chuong 7 - Tang Ung Dung

    40/40

    40

    Acknowledgment

    Bi ging c s dng cc t liu v hnh v

    t: Ti liu ca trng i hc Keio v Ritsumekan

    Ti liu Computer Network, a top downapproach ca J.F Kurose v K.W. Ross