You are on page 1of 26

Cc ng dng mng

Ths. Vn Thin Hong

Ni dung
Tng quan tng ng dng ng dng tng mng M hnh client-server V d

Kin trc m hnh Internet


Email WWW FTP Telnet SSL TCP UDP

Ngi dng cui H tng mng

IP

Ethernet Wireless Cable/DSL

Tng ng dng
Cc kha cnh v khi nim v ci t ca

cc giao thc tng ng dng. M hnh client-server Bit mt s giao thc thng dng ca tng mng.
smtp/pop3 http ftp dns

ng dng mng v giao thc tng mng


Cc ng dng mng Cc chng trnh chy trn host cung cp giao din cho ngi dng. S dng giao thc ca tng ng dng giao tip. V d: email, Web Cc giao thc tng ng dng Mu thng tin nh ngha cch thc giao tip gia cc ng dng. Thc hin c dch v vi cc yu cu trong giao thc bng cch s dng cc dch v ca tng thp hn.

application transport network data link physical

web: browser audio/video: media player

application transport network data link physical

S dng cc dch v tng mng, vn chuyn nh th no?


Cung cp mt giao din lp trnh - API nh ngha giao din gia tng ng dng v tng mng. V d: Socket API

Cn gi l "Berkeley sockets. Mt socket bao gm a ch IP v s hiu cng V d: email (SMTP) cng 25, web (HTTP) cng 80 Mt ng dng s gn vi mt socket
%netstat a

Hai chng trnh giao tip vi nhau bng cch gi d liu ti socket, v c d liu ra t n.

Mt s API khc nh XTI (X/Open Transport Interface), (TLI) c pht trin bi AT&T.
Chi tit trnh by bi sau!
6

ng dng v Giao thc


Mt ng dng cn chn giao thc vn chuyn

ph hp

ng dng e-mail remote terminal access Web file transfer Internet telephony remote file server streaming multimedia

Giao thc tng ng dng smtp [RFC 821] telnet [RFC 854] http [RFC 2068] ftp [RFC 959] proprietary (v d, Vocaltec) NFS proprietary

Giao thc tng vn chuyn bn di TCP/SSL TCP TCP/SSL TCP UDP TCP hoc UDP UDP

M hnh Client-Server
C 2 loi ng dng mng: client and server Client (C): request Thit lp kt ni vi server (ni trc) Yu cu dch v ca server V d Web, client l trnh duyt reply web, e-mail, l mail reader (MS Outlook) application transport Server (S): network data link Cung cp cc dch v c yu physical cu cho client V d, Web server gi trang Cu hi t ra cho ng dung C-S. Web c yu cu; mail server - Lm th no client nh v c Server? - ng dng c mnh, m rng c khng? p tr e-mail
8
application transport network data link physical

E-Mail
Gm 3 thnh phn:
User agents Mail servers Cc giao thc

Hng i thng ip yu cu user mailbox user agent mail server user agent mail server user agent

SMTP SMTP
mail server

Gi mail gia cc mail server


SMTP

Ly mail gia mail server and user agent


POP3: Post Office Protocol [RFC 1939] IMAP: Internet Mail Access Protocol [RFC 1730]

SMTP

user agent

user agent

POP3 hoc IMAP

user agent
9

Giao thc gi mail - SMTP


S: C: S: C: S: C: S: C: S: C: C: C: C: C: C: C: C: C: S: C: S: 220 mr1.its.yale.edu HELO cyndra.yale.edu 250 Hello cyndra.cs.yale.edu, pleased to meet you MAIL FROM: <spoof@cs.yale.edu> 250 spoof@cs.yale.edu... Sender ok RCPT TO: <yry@yale.edu> 250 yry@yale.edu ... Recipient ok DATA 354 Enter mail, end with "." on a line by itself Date: Wed, 23 Jan 2008 11:20:27 -0500 (EST) From: "Y. R. Yang" <yry@cs.yale.edu> To: "Y. R. Yang" <yry@cs.yale.edu> Subject: This is subject This is the message body! Please dont spoof! . 250 Message accepted for delivery QUIT 221 mr1.its.yale.edu closing connection

Bi tp v nh :

- Tm hiu RFC 822 ? %telnet mr1.its.yale.edu 25


- Tm hiu RFC

2045, 2056 ?
10

Giao thc truy cp mail - POP3


Giai on chng thc
Cc lnh client:
S: C: S: C: S: C: S: S: S: C: S: S: C: C: S: S: C: C: S: +OK POP3 server ready user alice +OK pass hungry +OK user successfully logged list 1 498 2 912 . retr 1 <message 1 contents> . dele 1 retr 2 <message 1 contents> . dele 2 quit +OK POP3 server signing off
11

user pass p tr ca server +OK

on

-ERR

Giai on giao dch, client:


list: xem ds thng ip retr: ly ni dung thng

ip dele: xa thng ip quit: ng kt ni

telnet mail.hcmhutech.edu.vn 110

Bi tp
Tm hiu v Spam. Cc c ch lc spam v ng dng lc spam hin nay.

12

Web

Trang web:

Gm cc i tng. Ch nh bi URL Da vo trang HTML V mt s tham chiu i tng.

User agent cho web l trnh duyt web (browser), e.g.


Mozilla Firefox MS Internet Explorer

URL c hai thnh phn: tn min, s hiu cng v ng dn

Server cho web gi l Web server:


Apache MS Internet Information Server

http://it.hutech.edu.vn:80/index.php
13

Giao thc Web-HTTP


HTTP: hypertext transfer protocol
HTTP s dng TCP l dch
htt pr equ est htt pr esp ons e

v vn chuyn. M hnh client/server client: trnh duyt web trnh by cc i tng Web. server: Web server gi cc i tng web cho client. http1.0: RFC 1945 http1.1: RFC 2068

PC chy Explorer

st e u Server req p nse t o t h esp Chy my ch Web r Apache tp ht

Linux chy Navigator

14

Lung x l thng ip HTTP 1.0


Client thit lp kt ni TCP (to ra socket) ti server, cng 80 Server i cc yu cu t client Client gi yu ti liu Web server gi tr li ti liu tng ng ng kt ni TCP Client phn tch ti liu v nhng cc i tng vo (images) Lp li cho cc i tng khc.
15

Lung x l thng ip HTTP 1.0


Gi s user nhp URL
0. http server ti my ch it.hutech.edu.vn/index.php 1a. http client thit lp kt ni
it.hutech.edu.vn ang i kt ni TCP ti cng 80.

TCP ti http server ti it.hutech.edu.vn. Cng 80 l cng mt nh cho http server.

1b. Server chp nhn kt ni v


gi ack. cho client

2. http client gi http thng ip yu cu (cha URL) vo cng


kt ni TCP Socket

3. http server nhn thng ip

yu cu, to ra thng ip p tr cha thng tin yu cu (index.html), v gi vo socket.

time
16

Lung x l thng ip HTTP 1.0


4. http server ng kt ni TCP.

5. http client nhn thng ip

cha tp tin html, phn tch tp tin ny v nhng cc nh vo.

time6. Cc bc 1-5 lp cho mi nh.

17

Khun dng tng qut ca thng ip yu cu HTTP

ASCII (khun dng c th c c)

18

V d thng ip yu cu: GET


Dng yu cu (cc lnh GET, POST, HEAD)

GET /somedir/page.html HTTP/1.0 Host: www.somechool.edu Connection: close Cc dng User-agent: Mozilla/4.0 thng tin Accept: text/html, image/gif, image/jpeg header Accept-language: fr Cc thng tin d liu nu c (extra carriage return, line feed)

19

Thng ip p tr HTTP
Dng trng thi (giao thc M trng thi Trng thi) Cc dng thng tin header HTTP/1.0 200 OK Date: Wed, 23 Jan 2008 12:00:15 GMT Server: Apache/1.3.0 (Unix) Last-Modified: Mon, 22 Jun 1998 ... Content-Length: 6821 Content-Type: text/html data data data data data ...

D liu, v d, Tp tin Html c yu cu

20

Cc m trng thi HTTP


Dng u tin server->client, mt vi m v d 2xx OK

Thnh cng Ti nguyn yu cu c chuyn sang v tr mi Yu cu sai Ti liu khng tm thy server

301 Moved Permanently

400 Bad Request

404 Not Found

505 HTTP Version Not Supported 502 Dch v qu ti


21

Kim tra HTTP


1. Telnet ti mt Web server:
telnet it.hutech.edu.vn 80 M kt ni TCP ti cng 80 Mt nh l cng 80

2. G yu cu http GET:
GET /index.php HTTP/1.0

y l mt phng thc gi yu cu thng ip dng GET HTTP ti Server.

3. Quan st kt qu tr li t http server!

22

FTP: File Transfer Protocol


FTP FTP user client interface local file system file transfer FTP server remote file system

user at host

Vn chuyn cc tp tin ti cc host M hnh Client/server client: pha thit lp vic vn chuyn tp tin. server: host xa. ftp: RFC 959 ftp server: port 21 (smtp 25, http 80)

23

FTP: ng dng Client-Server s dng tch bit kt ni iu khin v kt ni d liu


ftp client gi cc lnh ti ftp

server ti cng 21 M hai kt ni song song iu khin: trao i cc lnh, v cc p tr gia client v server. D liu: d liu l tp tin ti/t server ftp server duy tr trng thi kt ni, v d,

Kt ni TCP, cng 21 cho vic iu khin

FTP cho vn chuyn d liu FTP client server

Kt ni TCP cng 20

Th mc hin hnh, Chng thc trc

24

Cc lnh v thng ip p tr FTP


Cc lnh mu:
bn m ASCII USER username PASS password HELP lit k cc lnh

Sample return codes


Lnh v thng ip dng vn M trng thi v thng tin

LIST tr li danh sch tp

tin trong th mc hin hnh.

RETR filename ly tp tin

c tn filename

trng thi (ging http) 331 Username OK, password required 125 data connection already open; transfer starting 425 Cant open data connection 452 Error writing file

Tho lun: Ti sao s dng khai knh kt ni tch bit d liu v iu khin?
25

Bi tp
Tm hiu Firewall Tm hiu Proxy Server Tm hiu cc phn mm ngun m vit bng

java lin quan n Firewall v Proxy Server trn mng, c th website sourceforge.net Vit bo co v chng trnh (Ly im, min thi)

You might also like