Tải bản đầy đủ (.pdf) (43 trang)

mạng máy tính ngô hồng sơn chương 7 0 tang ứng dụng sinhvienzone com

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (812.01 KB, 43 trang )

Chương 7:

Tầng ứng dụng
Giảng viên: Ngô Hồng Sơn
Bộ môn Truyền thông và Mạng máy tính
Khoa CNTT- ðHBK Hà Nội

1

SinhVienZone.com

/>

Tổng quan
Buổi trước: Tầng giao vận
Nguyên lý của tầng giao vận
TCP và UDP
Khái niệm kiểm soát luồng và kiểm soát tắc
nghẽn

Hôm nay: Tầng ứng dụng
Nguyên lý của tầng ứng dụng
Case study: HTTP, Mail, FTP, DNS, P2P…
2

SinhVienZone.com

/>

Khái niệm cơ bản


3

SinhVienZone.com

/>

Nhắc lại về kiến trúc phân tầng
Application

Hỗ trợ các ứng dụng trên mạng

(HTTP, Mail, …)

Transport

Truyền dữ liệu giữa các ứng dụng

(UDP, TCP …)

Network
(IP, ICMP…)

Datalink
(Ethernet, ADSL…)

Physical
(bits…)

Chọn ñường và chuyển tiếp gói tin giữa
các máy, các mạng

Hỗ trợ việc truyền thông cho các thành
phần kế tiếp trên cùng 1 mạng
Truyền và nhận dòng bit trên ñường
truyền vật lý
4

SinhVienZone.com

/>

Ứng dụng và dịch vụ trên mạng?
MUSIC ONLINE
VoIP

GAME
ON LINE

CHAT

VoD
e-Office
e-BANK

SMS
MAIL
SCHOOL
ON THE
INTERNET

WEB


YOUTUBE
VIDEO
CONFERENCE

GOOGLE
TELNET

FTP
EBAY

SKYPE
SSH

NEWS

BITTORENT

E-COMMERCE

GRID
e-Goverment

SinhVienZone.com

/>
5


Ứng dụng và giao thức ứng dụng

Giao thức ứng dụng
ðịnh nghĩa các quy tắc giao tiếp
Sử dụng các dịch vụ giao vận
(TCP/UDP…)

application
transport
network
data link
physical

Ứng dụng :
Các tiến trình giao tiếp với nhau
trên Internet qua việc trao ñổi
thông ñiệp
Hoạt ñộng trên các hệ thống
cuối
Cài ñặt giao thức ứng dụng ñể
cung cấp dịch vụ

Ví dụ ứng dụng/giao thức:

application
transport
network
data link
physical

Web (HTTP)
Mail (SMTP/POP/IMAP) …


application
transport
network
data link
physical

6

SinhVienZone.com

/>

Các thành phần của ứng dụng
Chương trình
Giao diện NSD:
Hỗ trợ cho NSD ñể làm việc với ứng dụng,
e.g. trình duyệt Web (Firefox, IE), phần mềm thư ñiện tử
(Thunderbird, Outlook,..)
Cài ñặt các giao thức và sử dụng dịch vụ giao vận
Chương trình máy chủ
Cung cấp dịch vụ cho người sử dụng

Tiến trình ứng dụng: chương trình ñang chạy trên
hệ ñiều hành
Các tiến trình giao tiếp?
Trên một máy: IPC (inter-process communication)
Giữa các máy trên mạng: qua socket
7


SinhVienZone.com

/>

Giao tiếp giữa các tiến trình trên
Internet
Nhắc lại: Socket là một giao
diện giữa tiến trình ứng dụng
và tầng giao vận
Socket ñược ñịnh danh bởi
Số hiệu cổng
ðịa chỉ IP
Kiểu giao thức giao vận
(TCP hay UDP)
Socket API (Application
Programming Interface): Cho
phép các tiến trình lựa chọn
tham số, lựa chọn dịch vụ…

host or
server

host or
server

process

controlled by
app developer


socket

socket
transport
layer
services

process

Internet

transport
layer
services

controlled
by OS
8

SinhVienZone.com

/>

Các mô hình ứng dụng
Khách-chủ
P2P
Mô hình lai

9


SinhVienZone.com

/>

Mô hình khách chủ
client

client

client

Server

client

Khách
Gửi yêu cầu truy cập dịch
vụ ñến máy chủ
Về nguyên tắc, không liên
lạc trực tiếp với các máy
khách khác
Chủ
Thường xuyên online ñể
chờ y/c ñến từ máy trạm
Có thể có máy chủ dự
phòng ñể nâng cao hiệu
năng, phòng sự cố
e.g. Web, Mail, …
10


SinhVienZone.com

/>

Mô hình ñiểm-ñiểm thuần túy
Peer

Peer

Peer
Peer

Peer

Peer

Không có máy chủ trung
tâm
Các máy có vai trò
ngang nhau
Hai máy bất kỳ có thể
liên lạc trực tiếp với
nhau
Không cần vào mạng
thường xuyên
E.g. Gnutella
11

SinhVienZone.com


/>

Mô hình lai
Một máy chủ trung tâm
ñể quản lý NSD, thông
tin tìm kiếm…
Các máy khách sẽ giao
tiếp trực tiếp với nhau
sau khi ñăng nhập
E.g. Skype

Client

Server

Client

Client

Máy chủ Skype quản lý
các phiên ñăng nhập, mật
khẩu…
Sau khi kết nối, các máy
sẽ gọi VoIP trực tiếp cho
nhau

Client-Server Comm.
12

P2P Comm.

SinhVienZone.com

/>

Case study 1: HTTP và WWW

13

SinhVienZone.com

/>

HTTP và Web
WWW: World Wide Web

Web clients

trao ñổi dữ liệu siêu văn bản
HTML (HyperText Markup
Language) trên Internet

IE

HTTP: HyperText Transfer
Protocol
Mô hình Client/Server
Client yêu cầu truy nhập tới các
trang web (các ñối tượng web)
và hiển thị chúng lên trình duyệt
Server: Nhận yêu cầu và trả lời

cho client

Firefox

htt
p

htt
p

req
ue
st
res
po
ns
e

server

t
es
u
eq
se
r
n
p
po
htt

s
re
p
t
ht
14

Navigator
SinhVienZone.com

Web

/>

HTTP hoạt ñộng ntn?
Server mở một TCP socket chờ tại cổng 80 (default)
Client khởi tạo một liên kết TCP tới server
Server chấp nhận yêu cầu tạo liên kết
Trao ñổi thông ñiệp HTTP (giao thức ứng dụng)
HTTP Request
HTTP Response

ðóng liên kết TCP
IP header TCP header HTTP header

Dữ liệu - payload
15

SinhVienZone.com


/>

Khuôn dạng HTTP request
Mã ASCII (dễ dàng ñọc ñược dưới dạng văn bản)
request line
(GET, POST,
HEAD commands)

GET /dccn/index.html HTTP/1.1
Host: www.it-hut.edu.vn
User-agent: Mozilla/4.0
header Connection: close
lines Accept-language:en-us

CR, LF

(extra carriage return, line feed)

indicates end
of message
16

SinhVienZone.com

/>

Khuôn dạng HTTP response
status line
(protocol
status code

status phrase)
header
lines

data, e.g.,
requested
HTML file

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 ...

17

SinhVienZone.com

/>

Các liên kết HTTP
HTTP không duy trì
Chỉ một ñối tượng web
ñược gửi qua liên kết
TCP
Sử dụng mặc ñịnh
trong HTTP/1.0

HTTP 1.0: RFC 1945

HTTP có duy trì
Nhiều ñối tượng có thể
ñược gửi qua một liên
kết TCP.
Sử dụng mặc ñịnh
trong HTTP/1.1
HTTP 1.1: RFC 2068

18

SinhVienZone.com

/>

Hoạt ñộng của HTTP/1.0
Web client

Web server

TCP C
onn. R
eq.

Init TCP connection

Accept TCP connection
OK, send HTTP request


GET /index
.html

index.

Parse index.html: has 10
reference to 10 images

html

Close TCP connection

TCP C
onn. R
eq.

ted
Accep

Repeat above steps 10
times!

GET im
g1.jpg

pg
img1.j

2xRTT


Accept TCP connection

Send images 1

Close TCP connection
19

Time
SinhVienZone.com

Send HTTP response: index.html

Time
/>

Hoạt ñộng của HTTP/1.1
Web client

Web server

TCP C
onn. R
eq.

Init TCP connection

ted
Accep

OK, send HTTP request

Parse index.html: has 10
reference to 10 images
request images 1

GET /index
.html

index.

html

Send HTTP
response: index.html

GET…

pg
img1.j

request images 2

Accept TCP connection

Send images 1

GET…

Send images 2
request images 10


Time
SinhVienZone.com

Stop-andwait!

Pipeline
20

Time
/>

HTTP/1.1 với pipeline
Web client

Web server

TCP C
onn. R
eq.

Init TCP connection

ted
Accep

OK, send HTTP request
Parse index.html: has 10
reference to 10 images
request images 1 -10


GET /index
.html

index.

html

Accept TCP connection

Send HTTP
response: index.html

GET…

Send images 1-10

21

Time
SinhVienZone.com

Time
/>

Các phương thức trong thông
ñiệp yêu cầu
HTTP/1.0
GET
POST
HEAD

yêu cầu máy chủ loại một
số ñối tượng ra khỏi thông
ñiệp trả lời

HTTP/1.1
GET, POST, HEAD
PUT
tải file lên máy chủ, ñường
dẫn chỉ ra trong URL, file
ñể trong body

DELETE
Xóa file chỉ ra bới ñường
dẫn

Lưu ý: Có 2 cách ñể gửi tham số ñến server: POST hoặc GET
/>22

SinhVienZone.com

/>

Mã trạng thái trả lời
Trong dòng ñầu tiên của thông ñiệp trả lời, ví dụ
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
23

SinhVienZone.com

/>

Bộ ñệm- Caching
“Cache”: Bộ nhớ ñệm
Khái niệm bộ nhớ cache
trong máy tính

www.xyz.com/index.htm

L1 cache, L2 cache
“cache miss”, “cache hit”
Xem xét trường hợp sau:
Một tổ chức có một ñường
nối tới Internet
Tất cả lưu lượng truy cập
web ñều ñi qua liên kết này
Nhiều NSD web có thể

cùng truy nhập tới cùng một
nội dung
Giải pháp cải tiến?
24

SinhVienZone.com

/>

Sử dụng bộ ñệm web - proxy
NSD ñặt tham số kết nối
truy cập web của trình
duyệt qua một máy chủ
proxy
trình duyệt gửi yêu cấu
ñến proxy
Miss: Proxy gửi yêu cầu
tới máy chủ web, trả lời
trình duyệt và lưu ñệm
ñối tượng web
Hit: Proxy trả ñối tượng
web cho trình duyệt

Web
server
HT
T

clientHTTP


Pr

eq u

Proxy
server

est

r es
pon
se
st
e
u
eq
r
P
n se
T
o
p
HT
es
r
TP
T
H

es t

u
q
e
Pr
T
nse
o
HT
p
r es
P
T
HT

client

25

SinhVienZone.com

/>

×