Bài giảng Quản trị mạng - Chương IV: Internet

I. Giới thiệu Internet

I.1. Giới thiệu Internet

I.2. Họ giao thức TCP/IP

II. Một số dịch vụ trên Internet

II.1. Mô hình Client/ Server.

II.2. Dịch vụ giao thức : HTTP.

II.3. Dịch vụ truyền File : Ftp

II.4. Dịch vụ: Electronic Mail

II.5. Dịch vụ đặt tên mềm DNS

III. Các dạng hoạt động của Socket

III.1.TCP Sockets.

III.2. UDP Sockets.

iV. Thảo Luận

Bài giảng Quản trị mạng - Chương IV: Internet trang 1

Trang 1

Bài giảng Quản trị mạng - Chương IV: Internet trang 2

Trang 2

Bài giảng Quản trị mạng - Chương IV: Internet trang 3

Trang 3

Bài giảng Quản trị mạng - Chương IV: Internet trang 4

Trang 4

Bài giảng Quản trị mạng - Chương IV: Internet trang 5

Trang 5

Bài giảng Quản trị mạng - Chương IV: Internet trang 6

Trang 6

Bài giảng Quản trị mạng - Chương IV: Internet trang 7

Trang 7

Bài giảng Quản trị mạng - Chương IV: Internet trang 8

Trang 8

Bài giảng Quản trị mạng - Chương IV: Internet trang 9

Trang 9

Bài giảng Quản trị mạng - Chương IV: Internet trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 22 trang xuanhieu 7320
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Quản trị mạng - Chương IV: Internet", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Quản trị mạng - Chương IV: Internet

Bài giảng Quản trị mạng - Chương IV: Internet
c ở tầng IP đƣợc mô tả nhƣ
sau:
LAN A WAN LAN B
10
Đối với thực thể IP ở trạm nguồn:
1. Tạo một IP Datagram để gửi đi
2. Tính Checksum và ghép vào Header của Datagra
3. Ra quyết định chọn đƣờng: hoặc trạm đích thuộc cùng
một mạng hoặc khác mạng chuyển tới Router hoặc
Gateway tiếp theo.
4. Chuyển Datagram xuống tầng dƣới để truyền qua
mạng.Đối với Gateway hoặc Router:
1. Tính lại Checksum nếu có lỗi thì loại bỏ.
2. Giảm giá trị tham số Time to Live. Nếu bằng 0 thì loại bỏ.
3. Ra quyết định chọn đƣờng.
4. Phân đoạn Datagram nếu cần.
5. Kiến tạo lại IP Header, bao gồm giá trị mới của tham số
Time to Live, phân đoạn và Checksum.
6. Chuyển Datagram xuống tầng dƣới để truyền qua mạng.
611
Đối với thực thể IP ở trạm 
đích: 
1. Tính Checksum nếu có lỗi thi loại bỏ
2. Tập hợp các Datagram nếu dữ liệu bị phân đoạn.
3. Chuyển Datagram và các tham số điều khiển lên tầng
trên.2. Giao thức TCP – Transfer Control Protocol
TCP là giao thức có liên kết, tức là cần phải thiết lập liên kết 
(logic) giữa hai thực thể trƣớc khi tiến hành trao đổi dữ liệu. Đơn 
vị dữ liệu sử dụng trong TCP gọi là Segment (đoạn dữ liệu). Khuôn 
dạng tổng quát nhƣ sau:
12
Source Port Destination Port
Sequence Number
Acknowledgment Number
Data
Offset
Reser-
ved
U
R
G
A
C
K
P R
S S
H T
S
Y
N
F
I
N
Window
Checksum Urgent Pointer
Option Padding
TCP data
Source Destination Port Số hiệu cổng.
Optiont Khai báo các thay đổi.
URG Con trỏ khẩn có hiệu lực. ACK Tín hiệu báo nhận. PSH 
Chức năng đẩy. RST Reset. SYN Đồng bộ hoá. FIN Không còn dữ 
liệu từ trạm nguồn.
713
Một cổng kết hợp với một địa chỉ IP tạo thành một Socket duy
nhất trong liên mạng. Dịch vụ TCP đƣợc cung cấp nhờ một liên
kết logic giữa một cặp Socket. Một Socket có thể tham gia với
nhiều Socket ở xa. Trƣớc khi truyền dữ liệu giữa 2 trạm cần phải
thiết lập liên kết TCP giữa chúng và khi không còn nhu cầu truyền
dữ liệu thì liên kết đó sẽ đƣợc giải phóng.
3. Giao thức UDP – User Datagram Protocol
UDP là giao thức không liên kết đƣợc sử dụng thay thế cho TCP
theo yêu cầu của ứng dụng. Nó thƣờng đƣợc dùng cho các ứng
dụng không đòi hỏi độ tin cậy cao trong giao vận. Đơn vị dữ liệu
đƣợc gọi là UDP datagram. Có khuôn dạng nhƣ sau:
Source Port Destination Port
Message Length Checksum
Data
14
TCP/IP là một giao thức cùng làm việc với nhau để cung cấp phương
tiện truyền thông liên mạng. So sánh với mô hình tham chiếu OSI ta
thấy:
II. MỘT SỐ DỊCH VỤ TRÊN INTERNET
1. Dịch vụ WWW
2. Dịch vụ Telnet
3. Dịch vụ Email
4. Dịch vụ FTP
5. Dịch vụ tên miền DNS
815
II.1. Mô hình Client-server 
Một trao đổi điển hình giữa: 
client và server
application
transport
network
data link
physical
application
transport
network
data link
physical
Client:
• Khëi t¹o kÕt nèi víi server 
(“speaks first”)
• Yªu cÇu requests dÞch vô 
tõ server, 
• C¸c dÞch vô nh- Web, 
client lµ c«ng cô duyÖt 
browser; nh- e-mail lµ ®äc 
th-
request
reply
16
II.2. Dịch vụ: giao thức http 
http: hypertext transfer 
protocol
 Dịch vụ Web thuộc giao thức 
tầng ứng dụng
 Mô hinh client/server 
 client: duyệt và tiếp nhận 
các yêu cầu, “displays” 
Web objects
 server: Web server 
chuyển các đối tƣợng để 
đáp ứng các yêu cầu
 http1.0: RFC 1945
 http1.1: RFC 2068
PC running
Explorer
Server 
running
Apache Web
server
Mac running
Navigator
917
Ví dụ về http 
Giả sử ngƣời sử dụng đƣa vào địa chỉ URL sau www. 
School.edu/Department/home.index
1a. http client initiates TCP 
connection to http server 
(process) at www. 
School.edu. Port 80 is 
default for http server.
2. http client sends http 
request message
(containing URL) into TCP 
connection socket
1b. http server at host www. 
School.edu waiting for TCP 
connection at port 80. 
“accepts” connection, 
notifying client
3. http server receives request 
message, forms response 
message containing requested 
object 
(Department/home.index), 
sends message into sockettime
(contains text, 
references to 10 
jpeg images)
18
http example (cont.)
5. http client receives 
response message 
containing html file, 
displays html. 
Parsing html file, finds 
10 referenced jpeg 
objects
6. Steps 1-5 repeated for 
each of 10 jpeg 
objects
4. http server closes 
TCP connection. 
time
10
19
Dạng tổng quát của http request message
20
Khuôn dạng của http message: response
HTTP/1.0 200 OK 
Date: Thu, 06 Aug 1998 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 ... 
status line
(protocol
status code
status phrase)
header
lines
data, e.g., 
requested
html file
11
21
User-server interaction: authentication
Authentication goal: control 
access to server
• stateless: client presents 
authorization in each 
request
• authorization: typically 
name, password
– authorization:
header line in request
– Sends header line 
WWW authenticate:
if unauthorized
client server
usual http request msg
401: authorization req.
WWW authenticate:
usual http request msg
+ Authorization:line
usual http response msg
usual http request msg
+ Authorization:line
usual http response msg timeBrowser caches name & password so
that user does not have to repeatedly 
enter it.
22
User-server interaction: cookies
• server sends 
“cookie” to client in 
response msg
Set-cookie: 1678453
• client presents 
cookie in later 
requests
cookie: 1678453
• server matches 
presented-cookie 
with server-stored 
info
– authentication
– remembering user 
preferences
client server
usual http request msg
usual http response +
Set-cookie: #
usual http request msg
cookie: #
usual http response msg
usual http request msg
cookie: #
usual http response msg
cookie-
spectific
action
cookie-
spectific
action
12
23
User-server interaction: conditional
GET
• Goal: don’t send 
object if client has up-
to-date stored 
(cached) version
• client: specify date of 
cached copy in http 
request
If-modified-since: 
• server: response 
contains no object if 
cached copy up-to-
date: 
HTTP/1.0 304 Not 
Modified
client server
http request msg
If-modified-since: 
http response
HTTP/1.0 
304 Not Modified
object 
not 
modified
http request msg
If-modified-since: 
http response
HTTP/1.1 200 OK
object 
modified
24
Web Caches (proxy server)
• user sets browser: 
Web accesses via web 
cache
• client sends all http 
requests to web cache
– if object at web 
cache, web cache 
immediately returns 
object in http 
response 
– else requests object 
from origin server, 
then returns http 
response to client
Goal: satisfy client request without involving origin server
client
Proxy
server
client
origin 
server
origin 
server
13
25
Why Web Caching?
Assume: cache is 
“close” to client 
(e.g., in same 
network)
• smaller response 
time: cache 
“closer” to client
• decrease traffic to 
distant servers
– link out of 
institutional/local 
ISP network often 
bottleneck 
origin
servers
public
Internet
institutional
network
10 Mbps LAN
1.5 Mbps 
access link
institutional
cache
26
Browsers
Web Server
Networks
Mô hình phân phối nội dung
14
27
Browsers
Web Servers
Routers
Networks
Xảy ra tắc nghẽn trên đƣờng truyền
28
II.3. Dịch vụ truyền File ftp
• 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
file transfer
FTP
server
FTP
user
interface
FTP
client
local file
system
remote file
system
user 
at host
15
29
ftp: separate control, data connections
• ftp client contacts ftp 
server at port 21, 
specifying TCP as 
transport protocol
• two parallel TCP 
connections opened:
– control: exchange 
commands, responses 
between client, server.
“out of band control”
– data: file data to/from 
server
• ftp server maintains 
“state”: current directory, 
earlier authentication
FTP
client
FTP
server
TCP control connection
port 21
TCP data connection
port 20
30
ftp commands, responses
Sample commands:
• sent as ASCII text over 
control channel
• USER username
• PASS password
• LIST returns list of file 
in current directory
• RETR filename
retrieves (gets) file
• STOR filename stores 
(puts) file onto remote 
host
Sample return codes
• status code and 
phrase (as in http)
• 331 Username OK, 
password required
• 125 data 
connection 
already open; 
transfer starting
• 425 Can’t open 
data connection
• 452 Error writing 
file
16
31
II.4. Dịch vụ: Electronic Mail
Three major components: 
• user agents 
• mail servers 
• simple mail transfer 
protocol: smtp
User Agent
• a.k.a. “mail reader”
• composing, editing, 
reading mail messages
• e.g., Eudora, Outlook, 
elm, Netscape 
Messenger
• outgoing, incoming 
messages stored on 
server
user mailbox
outgoing 
message queue
mail
server
user
agent
user
agent
user
agent
mail
server
user
agent
user
agent
mail
server
user
agent
SMTP
SMTP
SMTP
32
Electronic Mail: mail servers
Mail Servers 
• mailbox contains 
incoming messages 
(yet to be read) for user
• message queue of 
outgoing (to be sent) 
mail messages
• smtp protocol between 
mail servers to send 
email messages
– client: sending mail 
server
– “server”: receiving 
mail server
mail
server
user
agent
user
agent
user
agent
mail
server
user
agent
user
agent
mail
server
user
agent
SMTP
SMTP
SMTP
17
33
Mail message format
smtp: protocol for 
exchanging email 
msgs
RFC 822: standard for 
text message format:
• header lines, e.g.,
– To:
– From:
– Subject:
different from smtp 
commands!
• body
– the “message”, ASCII 
characters only
header
body
blank
line
34
Message format: multimedia extensions
• MIME: multimedia mail extension, RFC 
2045, 2056
• additional lines in msg header declare 
MIME content type
From: alice@crepes.fr 
To: bob@hamburger.edu 
Subject: Picture of yummy crepe. 
MIME-Version: 1.0 
Content-Transfer-Encoding: base64 
Content-Type: image/jpeg 
base64 encoded data ..... 
......................... 
......base64 encoded data 
multimedia data
type, subtype, 
parameter declaration
method used
to encode data
MIME version
encoded data
18
35
Mail access protocols
• 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.
user
agent
sender’s mail 
server
user
agent
SMTP SMTP POP3 or
IMAP
receiver’s mail 
server
36
POP3 protocol
authorization phase
• client commands: 
– user: declare 
username
– pass: password
• server responses
– +OK
– -ERR
transaction phase, client:
• list: list message 
numbers
• retr: retrieve 
message by number
• dele: delete
• quit
C: list 
S: 1 498 
S: 2 912 
S: . 
C: retr 1 
S: 
S: . 
C: dele 1 
C: retr 2 
S: 
S: . 
C: dele 2 
C: quit 
S: +OK POP3 server signing off
S: +OK POP3 server ready 
C: user alice 
S: +OK 
C: pass hungry 
S: +OK user successfully logged on
19
37
II.5. Dịch vụ đặt tên mềm DNS
host surf.eurecom.fr
wants IP address of 
gaia.cs.umass.edu
1. Contacts its local DNS 
server, 
dns.eurecom.fr
2. dns.eurecom.fr
contacts root name 
server, if necessary
3. root name server 
contacts authoritative 
name server, 
dns.umass.edu, if 
necessary requesting host
surf.eurecom.fr
gaia.cs.umass.edu
root name server
authorititive name server
dns.umass.edu
local name server
dns.eurecom.fr
1
2
3
4
5
6
38
III. Các dạng hoạt động của Socket.
III.1. TCP sockets
Socket: Là cửa kết nối giữa một quá trình ứng dụng và 
đâu cuôi giao thức tầng transport (UCP or TCP)
TCP service: dịch vụ vận chuyển tin cậy các byte từ 
một quá trình này sang một quá trình khác
process
TCP with
buffers,
variables
socket
controlled by
application
developer
controlled by
operating
system
host or
server
process
TCP with
buffers,
variables
socket
controlled by
application
developer
controlled by
operating
system
host or
server
internet
20
39
TCP sockets
Client must contact server
• server process must 
first be running
• server must have 
created socket (door) 
that welcomes client’s 
contact
Client contacts server by:
• creating client-local 
TCP socket
• specifying IP address, 
port number of server 
process
• When client creates socket:
client TCP establishes 
connection to server TCP
• When contacted by client, 
server TCP creates new 
socket for server process 
to communicate with client
– allows server to talk with 
multiple clients
TCP provides reliable, in-order
transfer of bytes (“pipe”) 
between client and server
application viewpoint
40
TCP Sockets
Example client-server app:
• client reads line from 
standard input 
(inFromUser stream) , 
sends to server via 
socket (outToServer
stream)
• server reads line from 
socket
• server converts line to 
uppercase, sends back to 
client
• client reads, prints 
modified line from socket 
(inFromServer stream)
Input stream: sequence 
of bytes into process
Output stream:
sequence of bytes 
out of process
client socket
21
41
Tƣơng tác Client/server socket: TCP
wait for incoming
connection request
connectionSocket =
welcomeSocket.accept()
create socket,
port=x, for
incoming request:
welcomeSocket = 
ServerSocket()
create socket,
connect to hostid, port=x
clientSocket = 
Socket()
close
connectionSocket
read reply from
clientSocket
close
clientSocket
Server (running on hostid) Client
send request using
clientSocketread request from
connectionSocket
write reply to
connectionSocket
TCP 
connection setup
42
III.2. UDP Sockets
UDP: no “connection” 
between client and 
server
• no handshaking
• sender explicitly 
attaches IP address 
and port of 
destination
• server must extract IP 
address, port of 
sender from received 
datagram
UDP: transmitted data 
may be received out 
of order, or lost
application viewpoint
UDP provides unreliable transfer
of groups of bytes (“datagrams”)
between client and server
22
43
Client/server socket interaction: UDP
close
clientSocket
Server (running on hostid)
read reply from
clientSocket
create socket,
clientSocket = 
DatagramSocket()
Client
Create, address (hostid, port=x,
send datagram request 
using clientSocket
create socket,
port=x, for
incoming request:
serverSocket = 
DatagramSocket()
read request from
serverSocket
write reply to
serverSocket
specifying client
host address,
port umber

File đính kèm:

  • pdfbai_giang_quan_tri_mang_chuong_iv_internet.pdf