1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng mạng máy tính và internet chương 2 (tiếp) trần quang hải bằng

22 265 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 556,45 KB

Nội dung

http client thiết lập liên kết TCP với http server process tại địa chỉ www.uct2.edu.vn, cổng 80 ngầm định với http server.. http server chấp nhận kết nối rồi thông báo với client.. ht

Trang 1

Cell phone: N/A Email: bangtqh@hotmail.com

Discussion

Web programming with ASP.

Visual Basic programming.

§ Object oriented programming.

§ Event driven programming.

§ Component driven programming.

TCP Socket programming.

§ Simple web server.

Trang 2

Chapter 2 The Application Layer 3

24/8-25/10/2009

Winsock

HTTP example

1a http client thiết lập liên kết

TCP với http server (process)

tại địa chỉ www.uct2.edu.vn,

cổng 80 (ngầm định với http

server).

2 http client gửi http request

message (bao gồm cả URL) tới

TCP connection socket

1b http server chấp nhận kết nối rồi thông báo với client.

3 http server nhận request

message, tạo ra http response

message có chứa các đối tượng

đượ c yêu cầu rồi gửi vào

time

Giả sử người dùng truy cập URL: www.uct2.edu.vn/index.htm

(trang web có text và 10 hình ảnh jpeg)

0 http server tại máy phục vụ www.uct2.edu.vn chờ yêu cầu kết nối TCP tại cổng 80.

Trang 3

Chapter 2 The Application Layer 5

24/8-25/10/2009

5 http client nhận response

message có chứa html file, hiển thị html Sau đó, phân tích html file, tìm URL của 10 hình ảnh jpeg trong tài liệu.

6 Bước 1-5 được lặp lại với từng

hình ảnh.

4 http server ngắt liên kết

time

Ch2 The Application Layer

2.1 Một số khái niệm và nguyên tắc.

2.2 Web & Hyper Text Transfer Protocol.

2.3 Web design and HTTP, Web programming.

2.4 File Transfer Protocol.

2.5 Electronic Mail Protocols.

2.6 Domain Name System.

Trang 4

Chapter 2 The Application Layer 7

24/8-25/10/2009

2.4 FTP - File Transfer Protocol

n Truyền/tải tệp (to/from remote host).

n Client/server model

¤ Client: đưa ra yêu cầu truyền tải

¤ Server = remote host

n FTP: RFC 959

file transfer

FTP server

FTP user interface

FTP client

local file system

remote file system

user

at host

FTP: control & data connections

n FTP sử dụng TCP.

n FTP sử dụng đồng thời 2 liên kết TCP tại 2 cổng:

¤ TCP control connection, port 21: trao đổi các thông điệp điều

khiển (commands, responses…)

¤ TCP data connection, port 20: truyền tải tệp

n FTP lưu giữ trạng thái client trong phiên làm việc (state vs HTTP is stateless).

FTP client

FTP server

TCP control connection

port 21

TCP data connection port 20

Trang 5

Chapter 2 The Application Layer 9

24/8-25/10/2009

FTP: Quá trình trao đổi/truyền tải

FTP server nghe tại cổng 21

FTP client yêu cầu kết nối với FTP server qua TCP tại cổng 21 Gửiuser & password để đăng nhập

FTP server chấp nhận, liên kết điều khiển (control connection) đượcthiết lập Quá trình trao đổi có thể bắt đầu

Khi server nhận được lệnh truyền tệp, nó mở liên kết dữ liệu (data connection) tới client, tệp được truyền qua liên kết này

Sau khi truyền xong một tệp, server ngắt liên kết dữ liệu (mỗi liên kếtchỉ sử dụng để truyền một tệp)

TCP control connection

port 21

TCP data connection port 20

n STOR filename stores

(puts) file onto remote host

Sample return codes

n status code and phrase (as in HTTP)

n 331 Username OK, password required

n 125 data connection already open;

transfer starting

n 425 Can’t open data connection

n 452 Error writing file

Lệnh (commands), phúc đáp (responses) được truyền dạng ASCII

Trang 6

Chapter 2 The Application Layer 11

FTP user interface

FTP client

local file system

remote file system

user

at host

Ch2 The Application Layer

2.1 Một số khái niệm và nguyên tắc.

2.2 Web & Hyper Text Transfer Protocol.

2.3 Web design and HTTP, Web programming.

2.4 File Transfer Protocol.

2.5 Electronic Mail Protocols.

2.6 Domain Name System.

Trang 7

Chapter 2 The Application Layer 13

24/8-25/10/2009

2.5 Electronic Mail

Ba thành phần chính:

n User agents (mail clients)

¤ Soạn, đọc thư (messages).

¤ Vd: Outlook, Eudora, Netscape

¤ Simple Mail Transfer Protocol (SMTP).

¤ Post Office Protocol (POP).

¤ Internet Mail Access Protocol (IMAP).

outgoing message queue

mail server

user agent

user agent

user agent

mail server

user agent user

agent

mail server

user agent

SMTP

SMTPSMTP

Alice <alice@uct2.edu.vn> Bob <bob@yahoo.com>

1) Alice sử dụng UA soạn thư, đ/c gửi

tới “to”: bob@yahoo.com

2) Alice’s UA gửi thư đến mail server

của Alice, bức thư được xếp vào

hàng đợi (message queue)

3) Mail server của Alice mở liên kết

TCP tới mail server của Bob

4) Mail server của Alice gửithư qua liên kết TCP

5) Mail server của Bob cất thưnhận được vào hòm thư củaBob

6) Bob dùng UA để lấy thư từserver về rồi đọc thư

user agent

mail server

mail server user

Trang 8

Chapter 2 The Application Layer 15

24/8-25/10/2009

SMTP (Simple Mail Transfer Protocol)

n Sử dụng liên kết TCP (port 25) để gửi mails:

¤ Từ sender’s mail client tới sender’s mail server.

¤ Từ sender’s mail server tới receiver’s mail server.

n Ba pha (three ways handshake):

¤ responses: status code & phrase.

SMTP: sample interaction (C: client; S: server)

S: 220 yahoo.com

C: HELO uct2.edu.vn

S: 250 Hello uct2.edu.vn, pleased to meet you

C: MAIL FROM: <alice@uct2.edu.vn>

Trang 9

Chapter 2 The Application Layer 17

24/8-25/10/2009

SMTP: more

n SMTP sử dụng persistent connection: một liên kết, nhiều thông điệp

n Thông điệp (kể cả nội dung thư) phải được mã hoá dạng ASCII 7 bit (US-ASCII)

n Đánh dấu kết thúc msg bởi CRLF.CRLF

n Một số dữ liệu nhị phân (vd: picture) có thể chứaCRLF.CRLF cần

mã hoá để đảm bảo không có dữ liệu nào trùng với ký hiệu kết thúcmessage (vd: base64)

n So sánh với HTTP:

¤ HTTP: pull protocol <> SMTP: push protocol.

¤ Cùng sử dụng ASCII (command/req/resp/status code).

¤ HTTP: mỗi obj chứa trong một msg <> SMTP: cho phép nhiều obj (text,

picture…) trong một msg (multipart msg).

Mail message format

SMTP: giao thức trao đổi email msg

Trang 10

Chapter 2 The Application Layer 19

24/8-25/10/2009

MIME (Multipurpose Internet Mail Extension)

n RFC 822: text msg, gặp khó khăn với multimedia.

n MIME: RFC 2045, RFC 2056.

n So với RFC 822, MIME thêm vào các header lines để mô

tả nội dung của email msg.

From: alice@uct2.edu.vn To: bob@yahoo.com

Subject: Picture of yummy crepe MIME-Version: 1.0

Content-Transfer-Encoding: base64 Content-Type: image/jpeg

base64 encoded data

MIME: Content types

Content-type: type/subtype; parameters

Trang 11

Chapter 2 The Application Layer 21

24/8-25/10/2009

MIME: Encoding types

Content-Transfer-Encoding: Encoding type

Trang 12

Chapter 2 The Application Layer 23

24/8-25/10/2009

The received mail message

n Server thêm vào dòng header mỗi khi nhận thư:

¤ Received:

¤ Return-path:

n Mail có thể được chuyển qua nhiều server khác nhau (forward)

Received: from hamburger.edu by sushi.jp; 12 Oct 98 15:30:01 GMT

Received: from crepes.fr by hamburger.edu; 12 Oct 98 15:27:39 GMT

base64 encoded data

Hiển thị full headers với Y! Mail

1.Mail Options

2.General Preference

3.Messages: Show all…

Trang 13

Chapter 2 The Application Layer 25

24/8-25/10/2009

Mail access protocol

n SMTP: giao thức gửi mail tới server.

n Mail access protocol: giao thức nhận mail từ server.

¤ POP (Post Office Protocol): RFC 1939 TCP Port 110

¤ IMAP (Internet Mail Access Protocol): RFC 1730 TCP port 143

¤ HTTP: Hotmail, Yahoo!

user agent

sender’s mail server

user agent

protocol

receiver’s mail server

[2] Transaction phase, client:

n list: list message numbers

n retr: retrieve message by number

n dele: delete

[3] Update phase:

n Quit

n những thay đổi (dele) được cập nhật

S: +OK POP3 server ready C: user bob

S: +OK C: pass hungry S: +OK user successfully logged on

C: list S: 1 498 S: 2 912 S: C: retr 1 S: <message 1 contents>

S: C: dele 1 C: retr 2 S: <message 1 contents>

S: C: dele 2 C: quit S: +OK POP3 server signing off

[1]

[2]

[3]

Trang 14

Chapter 2 The Application Layer 27

24/8-25/10/2009

POP3 (more) and IMAP

More about POP3

n Chế độ “download and delete”

n Không lưu trạng thái giữa các

phiên làm việc (stateless)

IMAP4

n Lưu trữ toàn bộ msg tạiserver

n Cho phép người dùng tổ chứclưu trữ trên server (tạo thưmục, di chuyển msg…)

n Lưu trạng thái giữa các phiên(state):

¤ Thư mục tự tạo.

¤ Các msgs đã di chuyển.

Ch2 The Application Layer

2.1 Một số khái niệm và nguyên tắc.

2.2 Web & Hyper Text Transfer Protocol.

2.3 Web design and HTTP, Web programming.

2.4 File Transfer Protocol.

2.5 Electronic Mail Protocols.

2.6 Domain Name System.

Trang 15

Chapter 2 The Application Layer 29

24/8-25/10/2009

2.6 DNS (Domain Name System)

n Địa chỉ IP (32 bit) được sử dụng để xác định một nút trong mạngTCP/IP: 210.245.22.125 khó nhớ!

Sử dụng tên (host name) song song với IP address

n Host name IP (hostname to IP resolve).

n Host aliasing.

¤ Một máy tính có tên chính thức và có thể có bí danh (alias)

n Mail server aliasing.

¤ @uct2.edu.vn mail server address = ?

n Load distribution (phân tán tải)

¤ Một dịch vụ web (cnn.com, yahoo.com…) có thể được cung cấptại nhiều server có IP khác nhau để phân tán tải do lượng người

sử dụng cao

Trang 16

Chapter 2 The Application Layer 31

24/8-25/10/2009

Internet domain name space

n Domain name (tên miền):

¤ www: máy chủ world wide web.

¤ mail: máy chủ mail.

vn

Domain name servers

Vd: client muốn biết IP của www.amazon.com thì:

n Tìm địa chỉ của com DNS servers hỏi Root DNS servers

n amazon.com com DNS servers

n www.amazon.com amazon.com DNS servers

Root DNS Servers

poly.edu DNS servers

umass.edu DNS servers

yahoo.com

DNS servers

amazon.com DNS servers

pbs.org DNS servers

Trang 17

Chapter 2 The Application Layer 33

24/8-25/10/2009

DNS: Root name servers

13 root name servers

worldwide

b USC-ISI Marina del Rey, CA

l ICANN Los Angeles, CA

e NASA Mt View, CA

f Internet Software C Palo Alto,

CA (and 17 other locations)

i Autonomica, Stockholm (plus 3 other locations)

k RIPE London (also Amsterdam, Frankfurt)

n Khi local name server không thể chuyển host name IP, gửi yêu cầu tới root srv.

n root name server:

¤ Liên lạc với authoritative name server nếu chưa thể ánh xạ đ/c ngay.

¤ Lấy kết quả ánh xạ gửi về từ authoritative name server.

¤ Trả kết quả về cho local name server.

TLD and Authoritative Servers

n Top-level domain (TLD) servers: chịu trách nhiệm về các

miền com, org, net, edu… và uk, fr, ca, jp…

¤ Network Solutions: quản lý com TLD servers.

¤ Educause: quản lý edu TLD servers.

Trang 18

Chapter 2 The Application Layer 35

24/8-25/10/2009

Local name server

n Thuộc quản lý của ISP (ISP, company, university…).

n Khi một host muốn biết IP của một host nào đó, trước tiên,

nó “hỏi” local name server.

n Không nhất thiết phải nằm trong kiến trúc DNS servers (độc lập).

n “Gần” máy tính của người sử dụng nhất nên thường được

“hỏi thăm” đầu tiên mỗi khi có truy vấn DNS.

n Xem Windows Local DNS: ipconfig

2 dns.eurecom.fr liên lạc với

root name server (nếu cần)

3 root name server liên lạc với

authoritative name server:

6

Trang 19

Chapter 2 The Application Layer 37

24/8-25/10/2009

DNS example 2

Root name server có thể:

n Không biết authoritative

name server (ans).

n Biết intermediate name

root name server

local name server

n A hỏi B, B hỏi C, C hỏi

D,… rồi trả lời ngược lại.

n Server được hỏi chịu tải

nặng gấp đôi?

iterative query:

n DNS server được hỏi gợi

ý hỏi một server khác.

n “I don’t know this name,

but ask this server”

requesting host

surf.eurecom.fr

gaia.cs.umass.edu

root name server

local name server

dns.eurecom.fr

1

2 3 4

Trang 20

Chapter 2 The Application Layer 39

24/8-25/10/2009

DNS: caching & updating

n Mỗi khi DNS server nhận được yêu cầu tra cứu IP,

IP mà nó tìm được sẽ được lưu lại phục vụ cho

những lần tra cứu tiếp theo.

¤ Timeout: thời gian hết hạn (sau một khoảng thời gian, bản ghi cache tương ứng bị xoá).

¤ TLD servers thường được cache tại local name servers.

n Cơ chế cập nhật/thông báo được đưa ra bởi IETF:

¤ name = domain name

¤ value = IP address của

¤ name = domain name

¤ value = tên của mail server

DNS: distributed db storing resource records (RR)

RR format: (name, value, type, ttl)

Trang 21

Chapter 2 The Application Layer 41

¤ recursion desired: client mong

muốn DNS server tra cứu đệ quy.

¤ recursion available: server hỗ trợ

tra cứu đệ quy.

DNS Protocol: Query/reply messages có cùng format.

additional “helpful”

info that may be used

Trang 22

Chapter 2 The Application Layer 43

Bài tập tự làm và thảo luận

n Tìm hiểu các câu lệnh cơ bản của FTP, SMTP,

POP3 (Nộp báo cáo sau 1 tuần)

n Viết mail client đơn giản (không bắt buộc).

Ngày đăng: 04/12/2015, 07:21

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w