Professional Documents
Culture Documents
❑ OASIS
XML schema cho các ứng dụng cụ thể
Tổng quan về Mạng máy tính 1-6 Tổng quan về Mạng máy tính 1-7
Mục đích: Truyền dữ liệu Các ứng dụng sử dụng 1.1 Một số khái niệm cơ bản trong Internet
giữa các hệ thống cuối TCP: 1.2 Network edge
❑ UDP - User Datagram ❑ HTTP (Web), FTP (file
Protocol [RFC 768]: transfer), Telnet (remote 1.3 Network core
Không hướng kết nối login), SMTP (email) 1.4 Network access và physical media
Truyền dữ liệu không
tin cậy 1.5 Cấu trúc Internet và ISP
Các ứng dụng sử dụng
Không điều khiển UDP: 1.6 Độ trễ và độ mất gói trong mạng chuyển
luồng mạch gói
❑ Truyền dòng media, hội
Không điều khiển tắc nghị truyền hình, DNS,
ngẽn 1.7 Các tầng giao thức, các mô hình dịch vụ
điện thoại Internet
1.8 Lịch sử
Tổng quan về Mạng máy tính 1-14 Tổng quan về Mạng máy tính 1-15
Thời gian
Tổng quan về Mạng máy tính 1-18 Tổng quan về Mạng máy tính 1-19
6
Tổng quan về Mạng máy tính 1-20 Tổng quan về Mạng máy tính 1-21
So sánh chuyển mạch gói
Chuyển mạch gói: Ghép kênh tĩnh và chuyển mạch kênh
10 Mb/s Chuyển mạch gói là sự lựa chọn?
A Ethernet Ghép kênh tĩnh C
❑ Tốt cho dữ liệu truyền thay đổi
1.5 Mb/s Chia sẻ tài nguyên
B
Hàng đợi gói tin Đơn giản, không thiết lập cuộc gọi
Đợi đường truyền ra
❑ Tắc nghẽn tăng: độ trễ và độ mất gói tin
Các giao thức cần đảm bảo truyền dữ liệu tin cậy,
D điều khiển tẵc ngẽn
E
❑ Cung cấp hành vi giống circuit swiching như thế nào?
Chuỗi gói tin A và B không có mẫu cố định ghép Đảm bảo băng thông cần cho ứng dụng audio/video
kênh tĩnh.
Vấn đề chưa được giải quyết (chương 6)
Trong TDM, mỗi host nhận cùng số slot trong quy
vòng TDM frame.
Tổng quan về Mạng máy tính 1-22 Tổng quan về Mạng máy tính 1-24
Mạng truy cập dân cư: Truy cập điểm tới điểm Mạng truy cập dân cư: cable modem
cable headend
Gia đình
cable distribution
network (simplified)
Tổng quan về Mạng máy tính 1-32 Tổng quan về Mạng máy tính 1-33
Kiến trúc mạng cáp: Tổng quan Kiến trúc mạng cáp: Tổng quan
server(s)
Tổng quan về Mạng máy tính 1-36 Tổng quan về Mạng máy tính 1-37
Tổng quan về Mạng máy tính 1-40 Tổng quan về Mạng máy tính 1-41
Phương tiện vật lý: Sóng Radio Chương 1: Tổng quan về Mạng máy tính
❑ Tín hiệu mang trong phổ Kiểu đường truyền Radio:
điện từ ❑ Sóng Microwave(viba) mặt 1.1 Một số khái niệm cơ bản trong Internet
❑ Không có dây dẫn vật lý đất 1.2 Network edge
Đạt tới 45 Mbps
❑ Hai chiều 1.3 Network core
❑ LAN (ví dụ: Wifi)
❑ Ảnh hưởng của môi
2Mbps, 11Mbps
1.4 Network access và physical media
trường lan truyền:
Phản xạ ❑ Wide-Area (Ví dụ:e.g., 1.5 Cấu trúc Internet và ISP
Vật cản cellular) 1.6 Độ trễ và độ mất gói trong mạng chuyển
Nhiễu 3G: hàng trăm kbps
mạch gói
❑ Satellite(vệ tinh)
Đạt tới 50Mbps (hoặc nhiều
1.7 Các tầng giao thức, các mô hình dịch vụ
kênh bandwidth nhỏ hơn) 1.8 Lịch sử
Độ trễ end-end: 270 msec
11
Các vùng địavềlýMạng
Tổng quan xa máy tính 1-42 Tổng quan về Mạng máy tính 1-43
Cấu trúc Internet: Mạng của các mạng Cấu trúc Internet: Mạng của các mạng
❑ Phân cấp tương đối ❑ “Tier-2” ISP: các ISP nhỏ hơn (thường mức vùng)
❑ Mức trung tâm: “Tier-1” ISPs (ví dụ: UUNet, BBN/Genuity, Kết nối tới một hoặc nhiều Tier-1 ISP và các Tier-2 ISP
Tổng quan về Mạng máy tính 1-44 Tổng quan về Mạng máy tính 1-45
Cấu trúc Internet: Mạng của các mạng Cấu trúc Internet: Mạng của các mạng
❑ “Tier-3” ISP và local ISP ❑ Một gói tin chuyển qua nhiều mạng
Mạng gần nhất đối với các hệ thống cuối
local
ISP Tier 3 local local
local local ISP Tier 3 local
Local ISP và ISP ISP local local
ISP ISP ISP ISP
Tier- 3 ISP là ISP ISP
Tier-2 ISP Tier-2 ISP
khách hàng của Tier-2 ISP Tier-2 ISP
các Tier ISP Tier 1 ISP
mức cao hơn, NAP Tier 1 ISP
các tier mức NAP
cao hơn kết nối
tier là khách Tier 1 ISP Tier 1 ISP
hàng của nó
Tier-2 ISP
Tier 1 ISP Tier 1 ISP Tier-2 ISP
với phần còn lại local
Tier-2 ISP Tier-2 ISP local
của Internet local
ISP Tier-2 ISP Tier-2 ISP
local local ISP
ISP local local local
ISP ISP 12 ISP
Tổng quan về Mạng máy tính 1-46
ISP ISP Tổng quan về Mạng máy tính 1-47
Các tầng giao thức Tổ chức của chuyến bay
Mạng là phức tạp!
ticket (purchase) ticket (complain)
❑ Nhiều thành phần:
Host baggage (check) baggage (claim)
Tổng quan về Mạng máy tính 1-48 Tổng quan về Mạng máy tính 1-49
runway (takeoff)
❑ Mô đun hóa để dễ bảo trì, nâng cấp hệ thống
runway (land) takeoff/landing
airplane routing airplane routing airplane routing airplane routing airplane routing Sự thay đổi trong việc thực hiện dịch vụ của mỗi
departure intermediate air-traffic arrival
tầng là trong suốt với phần còn lại của hệ thống
airport control centers airport
Ví dụ: Sự thay đổi trong thủ tục “in gate” không
ảnh hưởng tới phần còn lại của hệ thống
Layers: Mỗi lớp thực hiện một dịch vụ
❑ Có hạn chế của sự phân tầng ?
Hoạt động xử lý qua chính lớp nội bộ của nó
Phụ thuộc vào các dịch vụ mà lớp dưới cung cấp
13
Tổng quan về Mạng máy tính 1-50 Tổng quan về Mạng máy tính 1-51
source
Ngăn xếp giao thức Internet message M application
Đóng gói
segment Ht M transport
datagram Hn Ht M network
❑ Application: hỗ trợ các ứng dụng frame Hl Hn Ht M link
mạng application physical
FTP, SMTP, … Hl Hn Ht M link Hl Hn Ht M
❑ Transport: truyền dữ liệu host-host transport physical
TCP, UDP switch
❑ Network: dẫn đường các datagram từ network
nguồn tới đích
IP, các giao thức dẫn đường link destination Hn Ht M network Hn Ht M
Hl Hn Ht M link Hl Hn Ht M
❑ Link: truyền dữ liệu giữa các thành M application
physical Ht M transport physical
phần mạng láng giềng
Hn Ht M network
PPP, Ethernet Hl Hn Ht M link router
❑ Physical physical
Tổng quan về Mạng máy tính 1-52 Tổng quan về Mạng máy tính 1-53
Tổng quan về Mạng máy tính 1-56 Tổng quan về Mạng máy tính 1-57
15
Tổng quan về Mạng máy tính 1-58 Tổng quan về Mạng máy tính 1-59
Độ trễ (Delay) Độ trễ (Delay)
Tổng quan về Mạng máy tính 1-60 Tổng quan về Mạng máy tính 1-61
16
Tổng quan về Mạng máy tính 1-62 Tổng quan về Mạng máy tính 1-63
Băng thông (Bandwidth) Chương 1: Tổng quan về Mạng máy tính
1-68 1-69
18
1-70 1-71
Mô hình tham khảo OSI Mô hình tham khảo OSI
❑ Tầng 3: Tầng mạng (Network Layer) ❑ Tầng 2: Tầng liên kết dữ liệu (Data-Link
Tầng này đảm bảo các gói tin dữ liệu (Packet) có Layer)
thể truyền từ máy tính này đến máy tính kia cho Tầng này đảm bảo truyền tải các khung dữ liệu
dù không có đường truyền vật lý trực tiếp giữa (Frame) giữa hai máy tính có đường truyền vật lý
chúng. nối trực tiếp với nhau.
Nó nhận nhiệm vụ tìm đường đi cho dữ liệu đến Nó cài đặt cơ chế phát hiện và xử lý lỗi dữ liệu
các đích khác nhau trong mạng. nhận.
1-72 1-73
Mô hình tham khảo OSI Chương 1: Tổng quan về Mạng máy tính
❑ Tầng 1: Tầng vật lý (Physical Layer) 1.1 Một số khái niệm cơ bản trong Internet
Điều khiển việc truyền tải thật sự các bit trên 1.2 Network edge
đường truyền vật lý.
1.3 Network core
Nó định nghĩa các tín hiệu điện, trạng thái đường
truyền, phương pháp mã hóa dữ liệu, các loại đầu 1.4 Network access và physical media
nối được sử dụng. 1.5 Cấu trúc Internet và ISP
1.6 Độ trễ và độ mất gói trong mạng chuyển
mạch gói
1.7 Các tầng giao thức, các mô hình dịch vụ
1.8 Lịch sử
19
1-74 Tổng quan về Mạng máy tính 1-75
Lịch sử Internet Lịch sử Internet
1961-1972: Nguồn gốc của mạng chuyển mạch gói 1972-1980: Làm việc liên mạng, các mạng mới
❑ 1961: Kleinrock – Lý thuyết ❑ 1972: ❑ 1970: Mạng vệ tinh ALOHAnet Quy tắc làm việc liên mạng của
hàng đợi chứng minh hiệu ARPAnet công bố rộng rãi satellite tại Hawaii Cerf và Kahn:
quả của chuyển mạch gói NCP (Network Control ❑ 1973: Luận văn tiến sỹ của Tối thiểu, tự trị – không đòi
❑ 1964: Baran – chuyển Protocol) là giao thức host- Metcalfe đề xuất mạng Ethernet hỏi có sự thay đổi bên trong
host đầu tiên 1974: Cerf và Kahn – kiến trúc để kết nối các mạng
mạch gói trong mạng dùng ❑
Chương trình e-mail đầu cho kết nối các mạng Mô hình dịch vụ best effort
trong quân sự
tiên Stateless router
❑ 1967: ARPAnet xây dựng ❑ Cuối những năm 70: kiến trúc
ARPAnet có 15 nút mới: DECnet, SNA, XNA Điều khiển không tập
bởi Advanced Research
chung
Projects Agency ❑ Cuối những năm 70: chuyển
Định nghĩa kiến trúc của Internet
❑ 1969: Nút ARPAnet đầu mạch các gói tin chiều dài cố ngày nay
tiên hoạt động định (tiền thân của ATM)
❑ 1979: ARPAnet có 200 nút
Tổng quan về Mạng máy tính 1-76 Tổng quan về Mạng máy tính 1-77
1-3 1-4
1-7 1-8
22
1-9 1-10
Truyền thông của các tiến trình Socket
host hoặc
Tiến trình: chương trình Tiến trình client: tiến trình ❑ Tiến trình gửi nhận
host hoặc
server
server
chạy trong một host. khởi đầu quá trình messages tới/từ socket
truyền thông của nó Điều khiển bởi
❑ Trong cùng host, 2 tiến người lập trình
trình giao tiếp sử dụng Tiến trình server: tiến trình ❑ Socket tương tự cửa ra Tiến trình ứng dụng Tiến trình
Các tiến trình đánh địa chỉ Giao thức lớp ứng dụng
❑ Đối với một tiến trình ❑ Định danh bao gồm cả
nhận messages, nó phải địa chỉ IP và địa chỉ ❑ Giao thức lớp ứng dụng Các giao thức công khai:
có một định danh cổng gán cho ứng dụng định nghĩa ❑ Định nghĩa trong các
❑ Một host có một địa chỉ trên host. Kiểu của bản tin trao đổi, RFC
IP duy nhất ví dụ bản yêu cầu, bản
❑ Ví dụ: Giá trị cổng của ❑ Cho phép phối hợp
tin trả lời
❑ Câu hỏi: Địa chỉ IP của một số ứng dụng: hoạt động
Cú pháp của kiểu bản tin:
host mà tiến trình chạy HTTP server: 80 Các trường trong bản tin ❑ Ví dụ: HTTP, SMTP
có đáp ứng được việc Mail server: 25 và mô tả các trường
Các giao thức không công
định danh tiến trình? ❑ Chi tiết hơn trong phần trong bản tin
Ý nghĩa của các trường
khai:
❑ Trả lời: Không, nhiều sau
Quy tắc các tiến trình
tiến trình có thể chạy
gửi/nhận bản tin khi nào
trên cùng host và như thế nào
23
1-13 1-14
Các dịch vụ giao vận mà ứng dụng cần Yêu cầu của ứng dụng giao vận của một số ứng
dụng
Mất dữ liệu Băng thông
❑ Một số ứng dụng (ví dụ: audio) Ứng dụng Mất dữ liệu Băng thông Thời gian
❑ Một số ứng dụng (ví dụ: đa
có thể chấp nhận một tỷ lệ mất phương tiện) yêu cầu lượng
Truyền file Co giãn Không
dữ liệu nào đó băng thông tối thiểu Không cho phép
E-mail Co giãn
Không cho phép Không
❑ Một số ứng dụng khác (ví dụ: ❑ Một số ứng dụng khác sử Web Co giãn Không
Không cho phép
Truyền file, telnet) đòi hỏi 100% dụng theo băng thông chúng Real-time audio/video Cho phép Audio: 5kbps-1Mbps Có, hàng trăm msec
dữ liệu truyền là tin cậy nhận được Video:10kbps-5Mbps
Stored audio/video Cho phép Tương tự trên Có, vài secs
Trò chơi tương tác Cho phép Yêu cầu kbps Có, hàng trăm msec
Thời gian Có
Instant messaging Không cho phép Co giãn
❑ Một số ứng dụng (ví dụ: điện
thoại Internet, trò chơi tương
tác) đòi hỏi độ trễ thấp
1-15 1-16
Các ứng dụng Internet: các giao thức tầng ứng dụng
Các dịch vụ các giao thức giao vận và tầng giao vận
24
1-17 1-18
Tầng ứng dụng Web và HTTP
❑ 6.1 Nguyên tắc của các ❑ 6.6 Chia sẻ file P2P
ứng dụng mạng ❑ Trang Web chứa các đối tượng
❑ 6.2 Web và HTTP ❑ Đối tượng có thể là file HTML, ảnh JPEG, Java
❑ 6.3 FTP applet, audio,…
❑ 6.4 Electronic Mail ❑ Trang Web chứa file HTML, chứa các đối tượng
SMTP, POP3, IMAP tham chiếu
❑ 6.5 DNS ❑ Mỗi đối tượng được đánh địa chỉ bởi một URL
❑ Ví dụ URL:
www.someschool.edu/someDept/pic.gif
1-19 1-20
Thời gian
1-23 1-24
time 6. Lặp bước 1-5 cho mỗi đối tượng TCP file
yêu cầu
ảnh jpeg
❑ 1 RTT cho yêu cầu HTTP RTT
transmit time
và nhận byte đầu tiên của
trả lời HTTP file
đã nhận
❑ Thời gian truyền file
total = 2RTT+transmit time thời gian thời gian
26
1-25 1-26
Persistent HTTP
Bản tin yêu cầu HTTP
Nonpersistent HTTP:
❑ Hai kiểu bản tin HTTP: yêu cầu, trả lời
❑ Yêu cầu 2 RTT cho 1 đối
tượng ❑ Bản tin yêu cầu HTTP:
❑ Hệ điều hành phải cấp phát ASCII
tài nguyên cho mỗi kết nối
TCP Request line
❑ Trình duyệt phải mở song (lệnh GET, POST, GET /somedir/page.html HTTP/1.1
song nhiều kết nối TCP để lấy HEAD ) Host: www.someschool.edu
đối tượng tham chiếu User-agent: Mozilla/4.0
header Connection: close
Persistent HTTP
line Accept-language:fr
❑ Server tạm dừng kết nối sau
khi gửi trả lời
❑ Các bản tin HTTP sau đó (CR, LF)
giữa cùng client/server được
gửi qua kết nối
1-27 1-28
27
1-29 1-30
Bản tin trả lời HTTP Mã trạng thái của trả lời HTTP
status line Trong dòng đầu tiên của trả lời server->client
(protocol Ví dụ:
status code HTTP/1.1 200 OK
status phrase) Connection close 200 OK
Date: Thu, 06 Aug 1998 12:00:15 GMT
Yêu cầu thực hiện thành công, đối tượng trong bản tin
Server: Apache/1.3.0 (Unix)
header
Last-Modified: Mon, 22 Jun 1998 …... 301 Moved Permanently
line
Content-Length: 6821 Đối tượng yêu cầu đã di chuyển vị trí, ví trí mới được chỉ ra
Content-Type: text/html trong bản tin (Location:)
dữ liệu, ví dụ: dữ liệu
400 Bad Request
file HTML đã Server không hiểu bản tin yêu cầu
yêu cầu 404 Not Found
Không tìm thấy đối tượng yêu cầu
505 HTTP Version Not Supported
1-31 1-32
28
1-33 1-34
Web cache Web cache
❑ Cache hoạt động như Lợi ích của Web cache ❑ Cache hoạt động như Tại sao dùng Web cache?
cả client và server ❑ Giảm thời gian trả lời cả client và server ❑ Giảm thời gian trả lời cho
❑ Thông thường, được ❑ Giảm lưu lượng trên đường ❑ Thông thường cache yêu cầu của client.
cài đặt bởi ISP truyền truy cập được cài đặt bởi ISP ❑ Giảm lưu lượng trên đường
truy cập của tổ chức.
(trường đại học, công
ty, nhà cung cấp dịch
vụ cho gia đình)
1-35 1-36
30
1-41 1-42
FTP: Kết nối dữ liệu và điều khiển riêng biệt Lệnh và trả lời của FTP
Kết nối điều khiển TCP
❑ FTP client liên lạc với FTP cổng 21 Ví dụ một số lệnh: Ví dụ một số mã trả về
server tại cổng 21, chỉ định
❑ Gửi văn bản mã ASCII ❑ Status code và status
dùng TCP làm giao thức giao
vận FTP
Kết nối dữ liệu TCP
FTP
qua kênh điều khiển phrase (như HTTP)
cổng 20
❑ Client giành ủy quyền qua kết client server ❑ USER username ❑ 331 Username OK,
nối điều khiển ❑ PASS password đòi hỏi mật khẩu
❑ Server mở một kết nối dữ liệu ❑ 125 kết nối dữ
❑ Client xem thư mục từ xa bằng
TCP thứ hai để truyền một file
❑ LIST trả về một danh
cách gửi lệnh qua kết nối điều sách các file trong thưc liệu đã mở; bắt
khiển khác. đầu truyền
❑ Kết nối điều khiển: truyền theo
mục hiện tại
❑ Khi server nhận một lệnh ❑ 425 Không thể mở
đường riêng ❑ RETR filename lấy
truyền file, server mở một kết kết nối dữ liệu
nối dữ liệu TCP tới client ❑ FTP server duy trì trạng thái: file
thư mục hiện tại, ủy quyền ❑ STOR filename đưa ❑ 452 Lỗi ghi file
❑ Sau khi truyền file, server đóng
kết nối. trước đó file lên remote host
1-43 1-44
❑ 2.3 FTP
❑ Simple mail transfer protocol: SMTP mail
SMTP server user
❑ 2.4 Electronic Mail agent
SMTP
SMTP, POP3, IMAP User Agent
❑ Còn gọi là Mail Reader SMTP
❑ 2.5 DNS user
❑ Soạn, sửa, đọc bản tin mail mail
server agent
❑ Ví dụ: Eudora, Outlook,
Netscape Messenger user
agent
❑ Các bản tin gửi tới và gửi đi
user
đã chứa trên server agent
31
1-45 1-46
Electronic Mail: Mail server Electronic Mail: SMTP [RFC 2821]
Mail Server user ❑ Sử dụng TCP để truyền tin cậy các bản tin thư điện tử từ
agent
client tới server, cổng 25
❑ mailbox chứa các bản tin mail
user ❑ Gửi trực tiếp: server gửi tới server nhận
thư điện tử gửi đến cho server
agent
người sử dụng ❑ Ba pha của việc truyền
SMTP mail Bắt tay
❑ message queue của các server user
bản tin thư điện tử gửi đi Truyền các bản tin
SMTP agent
Kết thúc
❑ SMTP protocol giữa các
mail server để gửi các SMTP ❑ Sự tương tác Lệnh/Trả lời
mail user
bản tin thư điện tử agent Lệnh: văn bản mã ASCII
server
client: mail server gửi Trả lời: status code và status phrase
1-47 1-48
Kịch bản: Alice gửi bản tin cho Bob Ví dụ tương tác SMTP
1) Alice dùng UA để soạn bản 4) SMTP client gửi bản tin của S: 220 hamburger.edu
tin và gửi cho Alice qua kết nối TCP C: HELO crepes.fr
bob@someschool.edu 5) Mail server của Bob chuyển S: 250 Hello crepes.fr, pleased to meet you
2) UA của Alice gửi bản tin tới bản tin vào mailbox của Bob C: MAIL FROM: <alice@crepes.fr>
mail server của cô ta; bản tin 6) Bob chạy user agent để đọc S: 250 alice@crepes.fr... Sender ok
đặt trong message queue bản tin C: RCPT TO: <bob@hamburger.edu>
3) Phía client của SMTP mở kết S: 250 bob@hamburger.edu ... Recipient ok
nối TCP với mail server của C: DATA
Bob S: 354 Enter mail, end with "." on a line by itself
C: Do you like ketchup?
C: How about pickles?
C: .
1
mail mail
user
S: 250 Message accepted for delivery
user server server
agent C: QUIT
agent 2 3 6
4 5 S: 221 hamburger.edu closing connection
32
1-49 1-50
SMTP: Một số thông tin khác Định dạng bản tin
❑ SMTP sử dụng persistent So sánh với HTTP: SMTP: giao thức để trao đổi
connections các bản tin thư điện tử header
❑ HTTP: pull dòng
❑ SMTP yêu cầu bản tin RFC 822: chuẩn định dạng bản
❑ SMTP: push trống
(header & body) dùng mã tin dạng văn bản
ASCII 7-bit ❑ Cả hai có tương tác ❑ Header lines, ví dụ
❑ SMTP server sử dụng Lệnh/Trả lời dạng mã ASCII, To:
CRLF.CRLF để xác định kết
body
status code From:
thúc bản tin Subject:
❑ HTTP: mỗi đối tượng được
khác Lệnh SMTP
đóng gói trong chính bản tin
❑ body
trả lời
bản tin, ký tự ASCII
❑ SMTP: nhiều đối tượng
được gửi trong bản tin có
nhiều phần
1-51 1-52
Định dạng bản tin: Các mở rộng đa phương tiện Thực hành tương tác SMTP
❑ MIME: Multimedia Mail Extension, RFC 2045, 2046
❑ Thêm các dòng trong header của bản tin khai báo kiểu nội
❑ telnet servername 25
dung MIME ❑ Xem trả lời 220 từ server
❑ Gõ vào các lệnh HELO, MAIL FROM, RCPT TO,
From: alice@crepes.fr
MIME version DATA, QUIT để gửi thư điện tử không sử dụng email
To: bob@hamburger.edu
Subject: Picture of yummy crepe. client (reader)
method sử dụng MIME-Version: 1.0
để mã hóa dữ liệu Content-Transfer-Encoding: base64
Content-Type: image/jpeg
kiểu dữ liệu
đa phương tiện, dữ liệu mã hóa kiểu base64 .....
kiểu con, .........................
khai báo tham số ......dữ liệu mã hóa kiểu base64
dữ liệu đã mã hóa
33
1-53 1-54
Các giao thức truy cập thư điện tử Giao thức POP3 S: +OK POP3 server ready
C: user bob
S: +OK
SMTP SMTP giao thức Pha ủy quyền
user
user C: pass hungry
agent truy cập agent ❑ Lệnh của client: S: +OK người sử dụng
user: khai báo tên người đăng nhập thành công
C: list
mail server mail server dùng S: 1 498
của bên gửi của bên nhận pass: mật khẩu S: 2 912
❑ SMTP: chuyển/lưu trữ thư tới server của bên nhận ❑ Trả lời của server S: .
C: retr 1
❑ Giao thức truy cập thư: lấy thư từ server +OK S: <message 1 contents>
POP: Post Office Protocol [RFC 1939] -ERR S: .
• Ủy quyền (agent <-->server) và tải thư C: dele 1
Pha giao dịch, client: C: retr 2
IMAP: Internet Mail Access Protocol [RFC 1730] ❑ list: liệt kê các số bản tin S: <message 1 contents>
• Nhiều tính năng hơn (phức tạp hơn) ❑ retr: lấy bản tin dựa vào số S: .
• Thao tác trên các bản tin lưu trên server C: dele 2
❑ dele: xóa
C: quit
HTTP: Hotmail , Yahoo! Mail, … ❑ quit S: +OK POP3 server chấm dứt
phiên làm việc
1-55 1-56
34
1-57 1-58
DNS: Domain Name System DNS
Con người: có nhiều định danh: Các dịch vụ DNS Tại sao không dùng DNS tập
Hệ thống tên miền (DNS):
CMT, tên, hộ chiếu ❑ Dịch tên host sang địa
chung ?
❑ Cơ sở dữ liệu phân tán được
Host, router trên Internet: thực hiện phân cấp bởi nhiều chỉ IP ❑ Một điểm lỗi
Địa chỉ IP (32 bít) để đánh name server ❑ Khối lượng lưu lượng
địa chỉ các đơn vị dữ liệu ❑ Bí danh cho Host
❑ Giao thức tầng ứng dụng để
gửi đi Canonical name và alias ❑ Cơ sở dữ liệu tập chung
host, router, name server giao
Tên, ví dụ: www.yahoo.com names xa
tiếp dịch giữa địa chỉ và tên
sử dụng bởi con người
Chú ý: Chức năng cơ bản ❑ Bí danh cho Mail server ❑ Bảo trì
Câu hỏi: Ánh xạ giữa địa chỉ IP
của Internet, thực hiện bởi ❑ Phân tải
và tên ?
giao thức ứng dụng
Web server: Một tập các
Sự phức tạp tại network
Không co giãn!
địa chỉ IP cho một
edge canonical name
1-59 1-60
org DNS servers edu DNS servers Liên lạc với authoritative name server nếu nó không biết ánh xạ tên
com DNS servers
Lấy ánh xạ
poly.edu umass.edu Trả ánh xạ về cho local name server
yahoo.com amazon.com pbs.org
DNS servers DNS serversDNS servers
DNS servers DNS servers a Verisign, Dulles, VA
c Cogent, Herndon, VA (also Los Angeles)
d U Maryland College Park, MD
Client muốn biết địa chỉ IP của www.amazon.com: g US DoD Vienna, VA k RIPE London (also Amsterdam, Frankfurt)
h ARL Aberdeen, MD i Autonomica, Stockholm (plus 3
j Verisign, ( 11 locations) other locations)
❑ Client yêu cầu root server để tìm com DNS server m WIDE Tokyo
❑ Client yêu cầu com DNS server để xác định e NASA Mt View, CA
f Internet Software C. Palo Alto, CA
13 root name
❑ Client yêu cầu amazon.com DNS server để lấy địa server trên toàn
chỉ IP cho www.amazon.com b USC-ISI Marina del Rey, CA
thế giới
l ICANN Los Angeles, CA
35
1-61 1-62
TLD và Authoritative Server Local Name Server
❑ Top-level domain (TLD) server: có vai trò đối ❑ Không hoàn toàn thuộc vào phân cấp
với com, org, net, edu,… và tất cả các miền ❑ Mỗi ISP (residential ISP, công ty, tổ chức) có
quốc gia mức trên cùng uk, fr, ca, jp,… Còn gọi là “default name server”
❑ Authoritative DNS server: DNS server của các ❑ Khi một host tạo truy vấn DNS, truy vấn được
tổ chức cung cấp ánh xạ authoritative hostname gửi tới Local DNS server của nó
thành địa chỉ IP cho server của tổ chức (ví dụ Hoạt động như một proxy, chuyển tiếp query vào
Web và Email). trong phân cấp.
Có thể duy trì bởi tổ chức hoặc nhà cung cấp dịch vụ
1-63 1-64
Giao thức DNS, bản tin Giao thức DNS, bản tin
Giao thức DNS: Bản tin truy vấn và trả lời có chung một
định dạng bản tin Các trường Name, type
cho một Truy vấn
Header của bản tin
❑ identification: 16 bit, định
cho truy vấn, trả lời sử Các bản ghi trong trả lời
dụng cùng giá trị
❑ flags: Các bản ghi cho
Truy vấn hay trả lời
authoritative server
Mong muốn đệ quy
Các bản ghi cung cấp
Có khả năng đệ quy
thông tin khác
Trả lời là ủy quyền
37
1-69 1-70
Chèn thêm bản ghi vào DNS Tầng ứng dụng
❑ Ví dụ: Tạo “Network Utopia” ❑ 6.1 Nguyên tắc của các ❑ 6.6 Chia sẻ file P2P
❑ Đăng ký tên networkuptopia.com tại registrar (ví dụ: nhà ứng dụng mạng
cung cấp giải pháp mạng)
Cần cung cấp cho registrar tên và địa chỉ IP của authoritative ❑ 6.2 Web và HTTP
name server của mạng (primary và secondary) ❑ 6.3 FTP
Registrar chèn thêm hai RR vào trong com TLD server:
❑ 6.4 Electronic Mail
(networkutopia.com, dns1.networkutopia.com, NS) SMTP, POP3, IMAP
(dns1.networkutopia.com, 212.212.212.1, A)
❑ 6.5 DNS
❑ Thêm vào authoritative server bản ghi kiểu A cho
www.networkuptopia.com và bản ghi kiểu MX cho
networkutopia.com
❑ Người khác xác định địa chỉ IP của Web site này như
thế nào?
1-71 1-72
nhận một địa chỉ IP mới ❑ Trong khi Alice đang tải, Địa chỉ IP
người sử dụng khác lấy Nội dung
1 3
❑ Tìm “Hey Jude”
dữ liệu đã có trên máy 2) Alice yêu cầu “Hey Jude”
2 1
❑ Ứng dụng các peer Alice
khác có bản sao chép 3) Alice yêu cầu file từ Bob
❑ Peer của Alice vừa là
của Hey Jude không.
Web client vừa là Web
server. Alice
❑ Xâm phạm bản quyền xác định vị trí nội dung P2P FTP
là không tập chung Hybrid SMTP, POP, IMAP
DNS
❑ Các yêu cầu ứng dụng:
Tính tin cậy, băng thông, độ
trễ
❑ Mô hình dịch vụ giao vận
của Internet
Tin cậy, hướng kết nối
Không tin cậy, datagrams:
UDP
1-75 1-76
D 3.1 Các dịch vụ D 3.5 Vận chuyển hướng chạy trên các host khác nhau
transport
network
D 3.2 Multiplexing O cấu trúc phân đoạn trên các hệ thống đầu cuối data link
physical
và demultiplexing O truyền dữ liệu tin cậy O phía gửi: cắt các thông network
data link
điều khiển luồng điệp ứng dụng thành các physical network
trẻ
O physical network
truyền thông logic data link
D không tin cậy, truyền physical
40
Lớp Transport 6 Lớp Transport 7
Multiplexing/demultiplexing Demultiplexing làm việc như thế nào
Demultiplexing tại host nhận: Multiplexing tại host gửi: D host nhận các IP datagrams
thu nhặt dữ liệu từ nhiều mỗi datagram có địa chỉ IP 32 bits
vận chuyển các đoạn đã nhận O
socket, đóng gói dữ liệu với nguồn và IP đích
được đến đúng socket port # nguồn port # đích
header (sẽ dùng sau đó cho O mỗi datagram mang 1 đoạn
demultiplexing) các header fields khác
của lớp transport
= socket = tiến trình
O mỗi đoạn có số port nguồn
và đích
application P3
P1
P1 application P2 P4 application dữ liệu ứng dụng
D host dùng địa chỉ IP & số (thông điệp)
transport transport transport port để điều hướng đoạn đến
socket thích hợp
network network network
42
Lớp Transport 15 Lớp Transport 17
UDP: (tt) UDP checksum
D thường dùng cho các ứng Mục tiêu: kiểm tra các “lỗi” (các bit cờ đã bật lên)
dụng streaming multimedia 32 bits
source port # dest port # trong các đoạn đã truyền
O chịu mất mát Độ dài
O cảm nhận tốc độ đoạn UDP length checksum
bao gồm cả
bên gửi: bên nhận:
D ngoài ra, UDP dùng dữ liệu
header D đối xử các nội dung đoạn D tính toán checksum của đoạn
ứng dụng
O DNS như một chuỗi các số đã nhận
(thông điệp)
O SNMP nguyên 16-bit D kiểm tra giá trị trên có bằng
D truyền tin cậy trên UDP: D checksum: bổ sung(tổng với giá trị trong trường
thêm khả năng này tại lớp bù 1) của các nội dung checksum:
application đoạn O NO – có lỗi xảy ra
O sửa lỗi D đặt giá trị checksum vào O YES – không có lỗi.
trường UDP checksum O Nhưng có thể còn lỗi khác
dạng thức đoạn UDP
nữa? Xem tiếp phần sau ….
1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1
bit dư
tổng 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 D các đặc thù của kênh truyền không tin cậy sẽ xác định sự phức
checksum 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 tạp của giao thức truyền dữ liệu data transfer protocol (rdt)
43
Lớp Transport 20 Lớp Transport 22
Các nguyên lý truyền dữ liệu tin cậy Các nguyên lý truyền dữ liệu tin cậy
D quan trọng trong các lớp application, transport, link D quan trọng trong các lớp application, transport, link
D là danh sách 10 vấn đề quan trọng nhất của mạng D là danh sách 10 vấn đề quan trọng nhất của mạng
D các đặc thù của kênh truyền không tin cậy sẽ xác định sự phức D các đặc thù của kênh truyền không tin cậy sẽ xác định sự phức
tạp của giao thức truyền dữ liệu data transfer protocol (rdt) tạp của giao thức truyền dữ liệu data transfer protocol (rdt)
Lớp Transport 23 Lớp Transport 24
dừng và chờ
rdt_rcv(rcvpkt) &&
notcorrupt(rcvpkt)
bên gửi gửi 1 gói,
extract(rcvpkt,data) sau đó dừng lại chờ phản hồi
deliver_data(data) từ bên nhận
udt_send(ACK)
rdt2.1: bên gửi quản lý các ACK/NAK bị rdt2.1: bên gửi quản lý các ACK/NAK bị
hỏng hỏng
rdt_send(data) rdt_rcv(rcvpkt) && notcorrupt(rcvpkt)
&& has_seq0(rcvpkt)
sndpkt = make_pkt(0, data, checksum)
udt_send(sndpkt) extract(rcvpkt,data)
rdt_rcv(rcvpkt) && deliver_data(data)
( corrupt(rcvpkt) || sndpkt = make_pkt(ACK, chksum)
chờ gọi 0 chờ ACK
hoặc NAK isNAK(rcvpkt) ) udt_send(sndpkt)
từ lớp trên rdt_rcv(rcvpkt) && (corrupt(rcvpkt) rdt_rcv(rcvpkt) && (corrupt(rcvpkt)
0 udt_send(sndpkt)
sndpkt = make_pkt(NAK, chksum) sndpkt = make_pkt(NAK, chksum)
rdt_rcv(rcvpkt)
rdt_rcv(rcvpkt) udt_send(sndpkt) udt_send(sndpkt)
&& notcorrupt(rcvpkt) chờ
&& isACK(rcvpkt) && notcorrupt(rcvpkt) chờ
rdt_rcv(rcvpkt) && 0 từ 1 từ rdt_rcv(rcvpkt) &&
&& isACK(rcvpkt)
not corrupt(rcvpkt) && dưới dưới not corrupt(rcvpkt) &&
has_seq1(rcvpkt) has_seq0(rcvpkt)
chờ ACK chờ gọi 1
hoặc NAK sndpkt = make_pkt(ACK, chksum) sndpkt = make_pkt(ACK, chksum)
từ lớp trên
rdt_rcv(rcvpkt) && 1 udt_send(sndpkt) udt_send(sndpkt)
rdt_rcv(rcvpkt) && notcorrupt(rcvpkt)
( corrupt(rcvpkt) || && has_seq1(rcvpkt)
isNAK(rcvpkt) ) rdt_send(data)
sndpkt = make_pkt(1, data, checksum) extract(rcvpkt,data)
udt_send(sndpkt)
udt_send(sndpkt) deliver_data(data)
sndpkt = make_pkt(ACK, chksum)
udt_send(sndpkt)
46
Lớp Transport 33 Lớp Transport 34
rdt2.2: một giao thức không cần
rdt2.1: thảo luận
NAK
bên gửi: bên nhận: D chức năng giống như rdt2.1, chỉ dùng các ACK
D số thứ tự # thêm vào D phải kiểm tra có D thay cho NAK, bên nhận gửi ACK cho gói vừa rồi đã
gói nhận trùng gói không nhận tốt
D chỉ cần hai số thứ O trạng thái chỉ rõ có hay O bên nhận phải rõ ràng chèn số thứ tự của gói vừa ACK
tự (0,1) là đủ. Tại không mong chờ số thứ D trùng ACK tại bên gửi hậu quả giống như hành động
tự 0 hoặc 1
sao? của NAK: truyền lại gói vừa rồi
D chú ý: bên nhận không
D phải kiểm tra nếu việc
biết ACK/NAK vừa rồi
nhận ACK/NAK bị hỏng
của nó có được bên gửi
D số trạng thái tăng lên nhận tốt hay không
2 lần
O trạng thái phải “nhớ” gói
“hiện tại” có số thứ tự là
0 hay 1 Lớp Transport 35 Lớp Transport 36
rdt2.2: gửi, nhận các mảnh rdt3.0: các kênh với lỗi và mất mát
rdt_send(data)
Giả định mới: kênh ưu tiên Cách tiếp cận: bên gửi chờ
sndpkt = make_pkt(0, data, checksum)
udt_send(sndpkt)
rdt_rcv(rcvpkt) &&
Chờ cho
( corrupt(rcvpkt) || cũng có thể làm mất ACK trong khoảng thời
các gói (dữ liệu hoặc gian “chấp nhận được”
Chờ cho isACK(rcvpkt,1) )
gọi 0 từ ACK
các ACK)
0 udt_send(sndpkt)
D truyền lại nếu không nhận ACK
trên
gửi phân mảnh
FSM O checksum, số thứ tự, các trong khoảng thời gian này
rdt_rcv(rcvpkt)
&& notcorrupt(rcvpkt) ACK, các việc truyền lại D nếu gói (hoặc ACK) chỉ trễ
rdt_rcv(rcvpkt) && && isACK(rcvpkt,0) sẽ hỗ trợ nhưng không đủ (không mất):
(corrupt(rcvpkt) || O truyền lại sẽ gây trùng,
has_seq1(rcvpkt)) Chờ
cho gọi
nhận phân mảnh nhưng dùng số thứ tự sẽ
udt_send(sndpkt) 0 từ FSM giải quyết được
dưới
rdt_rcv(rcvpkt) && notcorrupt(rcvpkt) O bên nhận phải xác định số
&& has_seq1(rcvpkt)
thứ tự của gói vừa gửi ACK
extract(rcvpkt,data)
deliver_data(data) D cần bộ định thì đếm lùi
sndpkt = make_pkt(ACK1, chksum) 47
udt_send(sndpkt) Lớp Transport 37 Lớp Transport 38
rdt3.0 gửi hành động của rdt3.0
rdt_send(data)
rdt_rcv(rcvpkt) &&
sndpkt = make_pkt(0, data, checksum) ( corrupt(rcvpkt) ||
udt_send(sndpkt) isACK(rcvpkt,1) )
rdt_rcv(rcvpkt) start_timer
Chờ cho Chờ
cho timeout
gọi 0 từ udt_send(sndpkt)
trên ACK 0
start_timer
rdt_rcv(rcvpkt)
&& notcorrupt(rcvpkt) rdt_rcv(rcvpkt)
&& isACK(rcvpkt,1) && notcorrupt(rcvpkt)
stop_timer && isACK(rcvpkt,0)
stop_timer
Chờ Chờ cho
timeout cho gọi 1
udt_send(sndpkt) ACK 1 từ trên
start_timer rdt_rcv(rcvpkt)
rdt_send(data)
rdt_rcv(rcvpkt) &&
( corrupt(rcvpkt) || sndpkt = make_pkt(1, data, checksum)
isACK(rcvpkt,0) ) udt_send(sndpkt)
start_timer
O gói 1KB mỗi 30 msec -> 33kB/s trên đường truyền 1 Gbps
O giao thức network hạn chế việc dùng các tài nguyên vật lý!
48
Lớp Transport 41 Lớp Transport 42
rdt3.0: hoạt động dừng-và-chờ Các giao thức Pipelined
gửi nhận Pipelining: bên gửi cho phép gửi nhiều gói đồng thời,
gói đầu tiên đã truyền, t = 0 không cần chờ báo nhận được
gói cuối cùng đã truyền, t = L / R O nhóm các số thứ tự phải tăng dần
O phải có bộ nhớ đệm tại nơi gửi và/hoặc nơi nhận
gói đầu tiên đã đến
RTT gói cuối cùng đã đến, gửi ACK
50
Lớp Transport 49 Lớp Transport 50
Lặp có lựa chọn: các cửa sổ gửi, nhận Lặp có lựa chọn
Gửi Nhận
dữ liệu từ lớp trên: gói n trong [rcvbase, rcvbase+N-
1]
D nếu số thứ tự kế tiếp sẵn
sàng trong cửa sổ, gửi gói D gửi ACK(n)
D không thứ tự: đệm (buffer)
timeout(n):
D có thứ tự: truyền (cũng
D gửi lại gói n, tái khởi tạo bộ
truyền các gói đã đệm, có
định thì
thứ tự), dịch chuyển cửa sổ
ACK(n) trong đến gói chưa nhận kế tiếp
[sendbase,sendbase+N]:
gói n trong [rcvbase-N,rcvbase-
D đánh dấu gói n là đã nhận 1]
D nếu gói không ACK có n nhỏ D ACK(n)
nhất, dịch chuyển cửa sổ
base đến số thứ tự không ngược lại:
ACK kế tiếp D lờ đi
250
RTT (milliseconds)
200
150
100
1 8 15 22 29 36 43 50 57 64 71 78 85 92 99 106
time (seconnds)
TCP Round Trip Time và Timeout TCP: truyền dữ liệu tin cậy
Thiết lập timeout
D TCP tạo dịch vụ rdt D Truyền lại được
D EstimtedRTT cộng “hệ số dự trữ an toàn”
trên dịch vụ không tin kích hoạt bởi:
sự biến thiên lớn trong EstimatedRTT -> hệ số dự trữ an toàn
cậy IP
O
lớn hơn O các sự kiện timeout
D ước lượng đầu tiên về sự biến thiên của SampleRTT từ D các đoạn Pipelined O các ack trùng lặp
EstimatedRTT : D các ACK tích lũy D lúc đầu khảo sát các
DevRTT = ()*DevRTT + bên gửi TCP đơn giản:
*|SampleRTT-EstimatedRTT| D TCP dùng bộ định
lờ đi các ack trùng lặp
thì truyền lại đơn
O
53
Lớp Transport 62 Lớp Transport 63
TCP các sự kiện:
NextSeqNum = InitialSeqNum
SendBase = InitialSeqNum
dụng: D gửi lại đoạn nào gây event: data received from application above
D tạo đoạn với số thứ ra timeout create TCP segment with sequence number NextSeqNum
if (timer currently not running)
(đơn giản)
tự của nó D khởi động lại bộ start timer
Lớp Transport
} /* end of loop forever */ Lớp Transport
64 65
TCP: các tình huống truyền lại TCP: các tình huống truyền lại (tt)
Host A Host B Host A Host B Host A Host B
Seq=92 timeout
timeout
timeout
X X
loss loss
Sendbase
= 100 SendBase
Seq=92 timeout
SendBase = 120
= 120
SendBase
= 100 SendBase time
= 120 timeout sớm tình huống ACK tích lũy
time time
tình huống mất ACK 54
Lớp Transport 66 Lớp Transport 67
TCP sinh ra ACK [RFC 1122, RFC 2581] Truyền lại nhanh
Sự kiện tại bên nhận TCP bên nhận hành động D Chu kỳ Time-out D Nếu bên gửi nhận 3
Đoạn đến với đúng số thứ tự ACK trễ. Chờ đến 500ms
thường tương đối dài: ACK của cùng một dữ
mong muốn. Tất cả dữ liệu đến cho đoạn kế tiếp. Nếu không có đoạn O độ trễ dài trước khi gửi liệu, nó cho là đoạn sau
đã được ACK kế tiếp, gửi ACK lại gói đã mất dữ liệu đã ACK bị mất:
D Xác nhận các đoạn O Truyền lại nhanh: gửi lại
Đoạn đến với đúng số thứ tự Gửi ngay một ACK tích lũy, chấp nhận
mong muốn. Một đoạn khác đang cho cả các đoạn theo thứ tự đã mất bằng các ACK đoạn trước khi bộ định thì
chờ ACK trùng lặp. hết hạn
O bên gửi thường gửi nhiều
Các đoạn đến không thứ tự Gửi ngay ACK trùng lặp, chỉ thị số thứ tự
lớn hơn số thứ tự đoạn mong muốn. đoạn của byte kế tiếp đang mong chờ đoạn song song
Có khoảng trống O Nếu đoạn bị mất, sẽ xảy
ra tình trạng giống như
Đoạn đến Gửi ngay ACK, với điều kiện là đoạn nhiều ACK trùng nhau
lấp đầy từng phần hoặc toàn bộ bắt đầu ngay điểm có khoảng trống
khoảng trống
Lớp Transport 68 Lớp Transport 69
TCP quản lý kết nối (tt) TCP quản lý kết nối (tt)
Đóng một kết nối: client server Bước 3: client nhận FIN, trả client server
đóng
lời với ACK. đang đóng
client đóng socket:
clientSocket.close(); O Trong khoảng “thời gian
chờ” – sẽ phản hồi với
Bước 1: client gửi đoạn điều ACK để nhận các FIN
đóng đang đóng
khiển TCP FIN đến server Bước 4: server, nhận ACK.
Bước 2: server nhận FIN, trả Kết nối đã đóng.
thời gian chờ
đã đóng đã đóng
56
Lớp Transport 74 Lớp Transport 75
TCP quản lý kết nối (tt)
3.6 Các nguyên lý của điều
khiển tắc nghẽn
D 2 gửi, 2 nhận
Tắc nghẽn:
D 1 router, các bộ
D “quá nhiều nguồn gửi quá nhanh và quá nhiều dữ liệu unlimited shared
đệm không giới hạn
Host B
output link buffers
đến mạng”
D không có truyền
D khác với điều khiển luồng!
lại
D các biểu hiện:
O các gói bị mất (tràn bộ đệm tại các router)
O các độ trễ quá dài (xếp hàng trong bộ đệm của D các độ trễ
router) lớn hơn khi
D là 1 trong 10 vấn đề nan giải nhất!
tắc nghẽn
D năng suất có
thể đạt tối đa
57
Lớp Transport 78 Lớp Transport 79
Các nguyên nhân/chi phí của tắc nghẽn:
Các nguyên nhân/chi phí của tắc nghẽn:
tình huống 2=
tình huống 2 D luôn luôn: out
in
D truyền lại “hoàn toàn” chỉ khi mất mát: > out
D 1 router, các bộ đệm có giới hạn in
D bên gửi truyền lại các gói đã mất
D truyền lại vì trễ (không mất) làm cho lớn hơn với cùng
in
out
Host A in : dữ liệu gốc
out R/2 R/2 R/2
out
out
out
dữ liệu truyền lại R/4
a. b. c.
“các chi phí” của tắc nghẽn:
D nhiều việc (truyền lại)
D các truyền lại không cần thiết: liên kết nhiều bản sao của gói
Lớp Transport 80 Lớp Transport 81
Các nguyên nhân/chi phí của tắc nghẽn: Các nguyên nhân/chi phí của tắc nghẽn:
tình huống 3 tình huống 3
D 4 người gửi Hỏi: điều gì xảy ra nếu và H
in in
D các đường qua nhiều hop tăng lên? o
s o
u
t
D timeout/truyền lại A t
Host A out H
in : dữ liệu gốc o
s
'in : dữ liệu gốc, cùng t
B
với dữ liệu truyền lại
chia sẻ vô hạn
các bộ đệm ouput
58
Lớp Transport 82 Lớp Transport 83
Các cách tiếp cận đối với điều khiển tắc
Ví dụ: điều khiển tắc nghẽn ATM ABR
nghẽn
2 cách:
ABR: tốc độ bit sẵn RM (resource management):
sàng: D gửi bởi bên gửi, rải rác với các ô
điều khiển tắc nghẽn end- điều khiển tắc nghẽn có sự
D “dịch vụ mềm dẻo” dữ liệu
end: hỗ trợ của mạng:
D nếu đường gửi “chưa hết”: D các bit trong ô thiết lập bởi các
D không có phản hồi rõ ràng D các router cung cấp phản hồi switch
về các hệ thống đầu cuối O 1 Obên gửi sẽ dùng băng
từ mạng O bit NI : không tăng tốc độ
thông sẵn sàng
D tắc nghẽn được suy ra từ bit duy nhất chỉ thị tắc (tắc nghẽn nhẹ)
nghẽn (SNA, DECbit, D nếu đường gửi tắc nghẽn:
việc quan sát các hệ thống O bit CI : tắc nghẽn rõ rệt
đầu cuối có mất mát, trễ TCP/IP ECN, ATM) O bên gửi điều tiết với
tốc độ tối thiểu D Các ô RM được trả về bên gửi từ
D tiếp cận được quản lý bởi O tốc độ sẽ gửi được xác
bên nhận với nguyên vẹn các bit
TCP định rõ ràng
Ví dụ: điều khiển tắc nghẽn ATM ABR TCP điều khiển tắc nghẽn: additive tăng lên,
multiplicative giảm xuống
D Cách tiếp cận: tăng tốc độ truyền (kích thước cửa sổ),
tìm khả năng băng thông có thể, cho đến khi có mất
mát xảy ra
O additive tăng lên: tăng CongWin bởi 1 MSS mỗi RTT
cho đến khi có mất mát xảy ra
O multiplicative giảm xuống: bỏ CongWin trong nửa
giai đoạn sau khi mất mát
D trường 2-byte ER trong ô RM 24
congestion
window
O switch đã tắc nghẽn có thể có giá trị ER thấp hơn trong ô Tìm kiếm
O tốc độ gửi do đó có thể được hỗ trợ tối đa trên đường băng thông
tắc nghẽn
16
Kbytes
D EFCI bit trong các ô dữ liệu: được cài giá trị 1 trong
switch đã tắc nghẽn 8 Kbytes
time
O nếu ô dữ liệu đứng trước ô RM có cài EFCI, bên gửi sẽ cài bit
CI trong ô RM trả về 59 time
Tại sao phải TCP công bằng? TCP: tính công bằng (tt)
Tính công bằng & UDP Tính công bằng & các kết nối
2 phiên làm việc cạnh tranh nhau: TCP song song
D nhiều ứng dụng
D Additive tăng, lưu lượng tăng
thường không dùng D không có gì ngăn cản
D multiplicative giảm lưu lượng tương xứng TCP việc ứng dụng mở các kết
nối song song giữa 2
không muốn tốc độ bị
host.
O
R chia sẻ băng thông bằng nhau
điều tiết do điều khiển
tắc nghẽn D Trình duyệt Web làm
Connection 2 throughput
P = min{Q, K −1}
trễ = 2RTT + O/R
+ (K-1)[S/R + RTT - WS/R]
- trong đó Q là số lần server rảnh nếu đối tượng đã khởi tạo kích thước
63
Lớp Transport 103 Lớp Transport 104
TCP Mô hình trễ: Khởi động chậm (2) TCP Mô hình trễ(3)
S
Các thành phần trễ: initiate TCP
connection
+ RTT = time from when server starts to send segment
•2 RTT dành cho thiết R
until server receives acknowledgement
lập kết nối và yêu cầu request
tượng
= S/R
S
2 k −1 = time to transmit the kth window
•thời gian server rảnh RTT
second window R request
S + RTT − 2k −1 S +
= idle time after the
Server rảnh:
RTT
third window
R
second window
= 2S/R
= 4S/R
kth window R
P = min{K-1,Q} lần
third window
= 4S/R
65
Lớp Transport 111 1-2
Tầng mạng
Chương 4: Tầng mạng
❑ Chuyển segment từ host
gửi tới host nhận application
❑ 4. 1 Tổng quan ❑ 4.5 Thuật toán dẫn transport
Link state segment thành các data link physical data link
và datagram physical physical
router sang đầu ra ❑ Dẫn đường: Quá trình Giá trị header Đường ra
0100 3
Ví dụ các dịch vụ cho từng Ví dụ các dịch vụ cho một Internet best effort Không Không Không Không Không (suy ra
datagram: luồng datagram: từ loss)
ATM CBR tốc độ Có Có Có Không
❑ Truyền đảm bảo ❑ Chuyển datagram đúng
hằng số tắc nghẽn
❑ Truyền đảm bảo độ trễ thứ tự ATM VBR tốc độ Có Có Có Không
nhỏ hơn 40 msec ❑ Đảm bảo tốc độ tối đảm bảo tắc nghẽn
thiểu cho luồng ATM ABR đảm bảo Không Có Không Có
❑ Hạn chế sự thay đổi mức tối thiểu
khoảng cách giữa các ATM UBR Không Không Có Không Không
gói tin
1-7 1-8
❑ Thiết lập mỗi cuộc gọi trước khi dữ liệu có thể truyền
❑ Mỗi gói tin mạng một định danh VC (không phải địa chỉ host
đích)
❑ Mọi router trên đường đi từ nguồn tới đích duy trì trạng thái
cho mỗi kết nối đi qua
❑ Tài nguyên router, đường truyền (bandwidth, vùng đệm) cấp
phát cho VC
1-11 1-12
68
1-13 1-14
Mạng datagram
❑ Không thiết lập cuộc gọi tại tầng mạng
❑ Router: không có trạng thái về các kết nối end-to-end
Không có khái niệm mức mạng về kết nối
❑ Các gói tin chuyển tiếp sử dụng địa chỉ của host đích
❑ Các gói tin cùng cặp địa chỉ nguồn-đích có thể đi
theo các đường khác nhau
application
application
transport
transport
network
data link 1. Gửi dữ liệu 2. Nhận dữ liệu network
data link
physical
physical
1-15 1-16
danh cho giao tiếp của 223.1.2.1 Phần subnet (các bít
223.1.1.2
223.1.2.1
223.1.1.2
host, router 223.1.1.4 223.1.2.9 phần cao) 223.1.1.4 223.1.2.9
Phần host (các bít phần
❑ Giao diện: kết nối giữa 223.1.2.2 thấp) 223.1.2.2
host/router và liên kết 223.1.1.3 223.1.3.27 223.1.1.3 223.1.3.27
223 1 1 1
71
1-25 1-26
Subnet 223.1.1.0/24
223.1.2.0/24
Subnet 223.1.1.2
1-27 1-28
Phần Phần
subnet host
11001000 00010111 00010000 00000000
200.23.16.0/23
72
1-29 1-30
Địa chỉ IP: Cách gán địa chỉ IP? Địa chỉ IP: Cách gán địa chỉ IP?
Q: Cách xác định subnet từ địa chỉ IP?
Q: Cách để host có địa chỉ IP? A: Tính dựa vào phần không gian địa chỉ được
cấp
❑ Khai báo bởi người quản trị
Windows: Control Panel->Network->Configuration-
>TCP/IP->Properties Khối của ISP 11001000 00010111 00010000 00000000 200.23.16.0/20
1-31 1-32
Địa chỉ phân cấp: Gửi kết tập Địa chỉ phân cấp
Địa chỉ phân cấp cho phép thông báo hiệu quả thông tin dẫn đường:
ISPs-R-Us có hơn một đường đi tới tổ chức 1
Tổ chức 0
Tổ chức 0 200.23.16.0/23
200.23.16.0/23
“Gửi cho tôi gói tin có địa chỉ bắt đầu bằng
Tổ chức 1 200.23.16.0/20”
“Gửi cho tôi gói tin có địa chỉ bắt đầu bằng
200.23.18.0/23 200.23.16.0/20” Tổ chức 2
Tổ chức 2 200.23.20.0/23 . Fly-By-Night-ISP
.
200.23.20.0/23 . Fly-By-Night-ISP . .
. . Internet
. . Internet
Tổ chức 7 .
.
Tổ chức 7 . 200.23.30.0/23
200.23.30.0/23 “Gửi cho tôi gói tin có địa chỉ bắt đầu bằng
ISPs-R-Us
“Gửi cho tôi gói tin có địa chỉ bắt đầu bằng 199.31.0.0/16
ISPs-R-Us hoặc 200.23.18.0/23”
199.31.0.0/16” Tổ chức 1
200.23.18.0/23
73
1-33 1-34
Địa chỉ IP: Các thông tin khác NAT: Network Address Translation
Q: Cách ISP nhận địa chỉ? Phần còn lại của Mạng cục bộ
Internet 10.0.0/24
A: ICANN: Internet Corporation for Assigned 10.0.0.1
1-35 1-36
1-39 1-40
❑ 4.1 Tổng quan ❑ 4.5 Thuật toán dẫn ❑ Sử dụng bởi host và router để
giao tiếp thông tin mức mạng Type Code Mô tả
❑ 4.2 Mạng Virtual circuit đường 0 0 echo reply (ping)
Thông báo lỗi: không thấy
Link state 3 0 dest. network unreachable
và datagram host, mạng, cổng, giao thức 3 1 dest host unreachable
Distance Vector Echo request/reply (sử dụng 3 2 dest protocol unreachable
❑ 4.3 IP: Internet Protocol
Hierarchical routing trong lệnh ping) 3 3 dest port unreachable
Định dạng Datagram ❑ Tầng mạng trên IP: 3 6 dest network unknown
Địa chỉ IPv4 ❑ 4.6 Dẫn đường trong 3 7 dest host unknown
Bản tin ICMP được chứa
ICMP Internet trong IP datagram 4 0 source quench (congestion
RIP ❑ Bản tin ICMP: type, code, 8 byte
control - not used)
IPv6 8 0 echo request (ping)
OSPF đầu tiên của IP datagram gây ra
❑ 4.4 Bên trong Router lỗi 9 0 route advertisement
BGP 10 0 router discovery
11 0 TTL expired
❑ 4.7 Dẫn đường 12 0 bad IP header
broadcast và multicast
75
1-41 1-42
Traceroute và ICMP Chương 4: Tầng mạng
❑ Phía nguồn gửi một ❑ Khi bản tin ICMP tới, ❑ 4.1 Tổng quan ❑ 4.5 Thuật toán dẫn
chuỗi các UDP segment nguồn tính RTT ❑ 4.2 Mạng Virtual circuit đường
đến đích ❑ Traceroute thực hiện 3 Link state
và datagram
Đầu tiên có TTL =1 lần Distance Vector
Thứ hai có TTL=2,… ❑ 4.4 IP: Internet Protocol
Điều kiện dừng Hierarchical routing
❑ Khi datagram thứ n tới Định dạng Datagram
❑ UDP segment cuối ❑ 4.6 Dẫn đường trong
router thứ n: cùng đến host đích
Địa chỉ IPv4
Router loại bỏ datagram ICMP Internet
❑ Đích trả về gói tin ICMP RIP
Và gửi tới nguồn một bản IPv6
tin ICMP (type 11, code “host unreachable” OSPF
0) (type 3, code 3) ❑ Bên trong Router
BGP
Bản tin bao gồm tên của ❑ Khi nguồn nhận gói tin
router và địa chỉ IP ❑ 4.7 Dẫn đường
ICMP này -> dừng
broadcast và multicast
1-43 1-44
76
1-45 1-46
Các thay đổi khác so với IPv4 Chuyển từ IPv4 sang IPv6
❑ Checksum: loại bỏ hoàn toàn để giảm thời ❑ Tất cả các router không thể nâng cấp đồng thời
gian xử lý tại mỗi hop Cách để mạng có thể hoạt động với cả router IPv4 và
1-47 1-48
IPv6 IPv6 IPv6 IPv6 ❑ 4. 1 Tổng quan ❑ 4.5 Thuật toán dẫn
❑ 4.2 Mạng Virtual circuit đường
A B C D E F
Góc nhìn vật lý: và datagram Link state
IPv6 Distance Vector
IPv6 IPv6 IPv4 IPv4 IPv6 ❑ 4.3 IP: Internet Protocol
Hierarchical routing
Flow: X Src:B Src:B Flow: X Định dạng Datagram
Src: A
Dest: F
Dest: E Dest: E Src: A
Dest: F Địa chỉ IPv4 ❑ 4.6 Dẫn đường trong
Flow: X Flow: X
Src: A Src: A ICMP Internet
dữ liệu Dest: F Dest: F dữ liệu RIP
IPv6
OSPF
dữ liệu dữ liệu
❑ 4.4 Bên trong Router
BGP
A-to-B: E-to-F:
❑ 4.7 Dẫn đường
B-to-C: B-to-C:
IPv6
IPv6 trong IPv6 trong
IPv6 broadcast và multicast
IPv4 IPv4 77
1-49 1-50
Tổng quan về kiến trúc của Router Chức năng của cổng vào
Hai chức năng chính của router
❑ Chạy các giao thức/thuật toán chọn đường (RIP, OSPF, BGP)
❑ Chuyển tiếp các datagram từ đường truyền vào sang đường truyền
ra
1-51 1-52
Bus hệ thống
78
1-53 1-54
Chuyển mạch qua bus Chuyển mạch qua mạng kết nối
1-55 1-56
v 3 w
2 5
Bảng chuyển tiếp cục bộ
Giá trị header Đường truyền ra u 2 1 z
0100 3
3
0101 1 2
0111
2
2 x 1
y
1001 1 Đồ thị: G = (N,E)
3 2 Chú ý: Sự trừu tượng hóa bằng đồ thị thích hợp trong nhiều ngữ cảnh khác
của mạng
Ví dụ: P2P, N là tập các peer và E là tập các kết nối TCP
80
1-61 1-62
Trừu tượng hóa mạng bằng đồ thị:
Phân loại thuật toán dẫn đường
chi phí
Thông tin thống nhất hay không Tĩnh hay động?
5
• c(x,x’) = chi phí của liên kết (x,x’) tập chung? Tĩnh (static):
3 - ví dụ: c(w,z) = 5 Thông tin thống nhất (Global): ❑ Các router thay đổi chậm theo
v w 5
2 ❑ Tất cả các router có topology, chi thời gian
• cost có thể luôn là 1
u 2
3
1 z hoặc liên quan tới bandwidth
phí liên kết đầy đủ Động (dynamic):
1 hoặc liên quan tới tắc nghẽn ❑ Các thuật toán “link state” ❑ Các router thay đổi nhanh hơn
2
x y Thông tin không tập chung
1 Cập nhật định kỳ
(decentralized): Phản hồi khi chi phí liên kết
❑ Router biết các hàng xóm có kết thay đổi
Chi phí của đường đi (x1, x2, x3,…, xp) = c(x1,x2) + c(x2,x3) + … + c(xp-1,xp) nối vật lý với nó, chi phí liên kết
tới hàng xóm
Câu hỏi: Đường đi có chi phí ít nhất giữa u và z? ❑ Quá trình lặp tính toán, trao đổi
thông tin với các hàng xóm
❑ Các thuật toán “distance vector”
Thuật toán dẫn đường:
thuật toán tìm đường đi có chi phí thấp nhất
1-63 1-64
❑ 4.1 Tổng quan ❑ 4.5 Thuật toán dẫn Thuật toán Dijkstra Chú thích:
đường ❑ Mọi nút đều biết topology của ❑ c(x,y): chi phí liên kết từ nút x
❑ 4.2 Mạng Virtual circuit mạng, chi phí của liên kết tới nút y; = ∞ nếu không là hàng
và datagram Link state
Thực hiện bằng “link state xóm trực tiếp
Distance Vector broadcast” ❑ D(v): giá trị hiện tại của chi phí
❑ 4.3 Bên trong Router
Hierarchical routing Mọi nút có thông tin giống đường đi từ nguồn tới đích v
❑ 4.4 IP: Internet Protocol nhau
❑ 4.6 Dẫn đường trong ❑ p(v): nút trước của v trong
Định dạng Datagram ❑ Tính toán đường đi có chi phí đường đi từ nguồn tới v
Internet thấp nhất từ một nút (nguồn) tới
Địa chỉ IPv4 ❑ N': tập các nút mà đường đi có
RIP tất cả các nút khác.
ICMP chi phí thấp nhất đã xác định
OSPF Cho kết quả là bảng chuyển
IPv6 tiếp của nút đó
BGP
❑ Lặp: sau k vòng lặp, biết đường
❑ 4.7 Dẫn đường đi có chi phí thấp nhất tới k đích
broadcast và multicast
81
1-65 1-66
Thuật toán Dijsktra Thuật toán Dijkstra: ví dụ
1 Khởi tạo: Bước N' D(v),p(v) D(w),p(w) D(x),p(x) D(y),p(y) D(z),p(z)
2 N' = {u} 0 u 2,u 5,u 1,u ∞ ∞
3 for <mọi nút v> 1 ux 2,u 4,x 2,x ∞
4 if <v kề u> 2 uxy 2,u 3,y 4,y
5 then D(v) = c(u,v) 3 uxyv 3,y 4,y
6 else D(v) = ∞ 4 uxyvw 4,y
7 5 uxyvwz
8 Lặp
9 Tìm w không trong N' thỏa mãn D(w) nhỏ nhất
10 Thêm w vào N' 5
11 Cập nhật D(v) với mọi v kề với w và không trong N' : v 3 w
12 D(v) = min( D(v), D(w) + c(w,v) ) 2 5
13 /* Chi phí mới tới v là chi phí cũ tới v hoặc là chi phí đường đi u 2 1 z
3
14 ngắn nhất tới w đã biết cộng với chi phí từ w tới v */ 1 2
15 Tới khi mọi nút trong N' x y
1
1-67 1-68
Thuật toán Distance Vector (3) Thuật toán Distance vector (4)
❑ Dx(y) = chi phí thấp nhất từ x tới y Ý tưởng:
❑ Mỗi nút định kỳ gửi tính toán distance vector của nó
❑ Distance vector: Dx = [Dx(y): y є N ] tới các hàng xóm
❑ Nút x biết chi phí tới mỗi hàng xóm v: c(x,v) ❑ Khi nút x nhận tính toán DV mới từ hàng xóm, nó cập
nhật DV của nó sử dụng công thức B-F:
❑ Node x duy trì Dx = [Dx(y): y є N ]
❑ Node x cũng duy trì các distance vector của Dx(y) ← minv{c(x,v) + Dv(y)} với mỗi y ∊ N
các hàng xóm của nó
Đối với hàng xóm v, x duy trì ❑ Ước lượng Dx(y) hội tụ tới chi phí thấp nhất thực tế
Dv = [Dv(y): y є N ] của dx(y)
83
1-73 1-74
Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)} Dx(z) = min{c(x,y) +
= min{2+0 , 7+1} = 2 Dy(z), c(x,z) + Dz(z)}
Thuật toán Distance Vector (5) Bảng nút x = min{2+1 , 7+0} = 3
chi phí tới chi phí tới chi phí tới
Lặp, không đồng bộ: Mỗi Mỗi nút:
x y z x y z x y z
vòng lặp cục bộ thực hiện x 0 2 7 x 0 2 3 x 0 2 3
khi: y ∞∞ ∞ y 2 0 1 y 2 0 1
từ
từ
❑ Chi phí liên kết cục bộ thay
từ
đợi for (thay đổi chi phí liên z ∞∞ ∞ z 7 1 0 z 3 1 0
đổi Bảng nút y
kết cục bộ, bản tin từ hàng chi phí tới chi phí tới chi phí tới
❑ Bản tin cập nhật DV từ hàng xóm) x y z x y z y
xóm x y z 2 1
Phân tán: tính lại x ∞ ∞ ∞ x 0 2 7 x 0 2 3 x z
y 2 0 1 y 2 0 1 y 2 0 1 7
❑ Mỗi nút thông báo cho hàng
từ
từ
từ
z ∞∞ ∞ z 7 1 0 z 3 1 0
xóm chỉ khi DV của nó thay
Bảng nút z
đổi Nếu DV tới đích nào đó thay chi phí tới chi phí tới chi phí tới
Sau đó, các hàng xóm đổi, thông báo cho hàng x y z x y z x y z
thông báo cho các hàng
xóm của nó nếu cần
xóm x ∞∞ ∞ x 0 2 7 x 0 2 3
y ∞∞ ∞ y 2 0 1 y 2 0 1
từ
từ
từ
z 7 1 0 z 3 1 0 z 3 1 0
thời gian
1-75 1-76
Distance Vector: chi phí liên kết thay đổi Distance Vector: chi phí liên kết thay đổi
Chi phí liên kết thay đổi: Chi phí liên kết thay đổi:
1 60
❑ Nút phát hiện chi phí liên kết cục bộ thay ❑ Tin mới đi nhanh y
y
đổi 4 1 ❑ Tin xấu đi chậm – vấn đề
4 1
❑ Cập nhật thông tin dẫn đường, tính lại DV x z “đếm vô hạn”! x z
50 50
❑ Nếu DV thay đổi, thông báo cho các hàng
xóm
Kỹ thuật “Poissoned
Tại thời điểm t0, y phát hiện chi phí liên kết thay đổi, cập nhật reverse”:
DV của nó và thông báo cho hàng xóm của nó.
❑ Nếu Z qua Y tới X :
“Tin mới Z nói với Y khoảng cách
Tại thời điểm t1, z nhận cập nhật từ y và cập nhật bảng của nó.
đi nhanh” Nó tính chi phí thấp nhất mới tới x và gửi DV của nó tới các của Z tới X là vô hạn (vì
hàng xóm của nó. vậy, Y không dẫn đường tới
X qua Z)
Tại thời điểm t2, y nhận cập nhật của z và cập nhật bảng ❑ Giải quyết bài toán “đếm vô
khoảng cách của nó. hạn”?
Chi phí thấp nhất của y không thay đổi và vì vậy y không gửi
bất kỳ bản tin nào tới z 84
1-77 1-78
So sánh thuật toán LS và DV Chương 4: Tầng mạng
Sự phức tạp bản tin Tính chịu lỗi: Điều gì xảy ra
❑ LS: n nút, E liên kết, O(nE) khi router bị lỗi? ❑ 4.1 Tổng quan ❑ 4.5 Thuật toán dẫn
bản tin gửi đi LS: ❑ 4.2 Mạng Virtual circuit đường
❑ DV: chỉ trao đổi giữa các hàng và datagram Link state
Nút có thể thông báo chi
xóm Distance Vector
phí liên kết sai ❑ 4.3 Bên trong Router
Thời gian hội tụ thay đổi Hierarchical routing
Mỗi nút chỉ tính toán bảng
❑ 4.4 IP: Internet Protocol
Tốc độ hội tụ của nó ❑ 4.6 Dẫn đường trong
Định dạng Datagram
❑ LS: Thuật toán O(n2) đòi hỏi DV: Internet
Địa chỉ IPv4
O(nE) bản tin Nút có thể thông báo chi RIP
ICMP
Có thể không ổn định phí đường đi sai OSPF
IPv6
❑ DV: Thời gian hội tụ thay đổi Mỗi bảng của nút sử dụng BGP
Có thể dẫn đường lặp
bởi nút khác
❑ 4.7 Dẫn đường
• Lan truyền lỗi qua mạng
Vấn đề “đếm vô hạn” broadcast và multicast
1-79 1-80
85
1-81 1-82
Kết nối giữa các AS Nhiệm vụ của Inter-AS
❑ Giả sử router trong AS1 AS1 cần:
nhận datagram có đích 1. Học đích nào thì gửi
3c ngoài AS1 qua AS2, đích nào thì
3a 2c
3b 2a Router nên chuyển tiếp gửi qua AS3
AS3 2b gói tin tới các gateway
1c AS2 2. Lan truyền thông tin
1a router. Câu hỏi: chọn
1b AS1 trên tới mọi router
1d ❑ Bảng chuyển tiếp được gateway router nào?
cấu hình cả thuật toán trong AS1
dẫn đường intra-AS và Công việc dẫn đường
Thuật toán Thuật toán inter-AS inter-AS!
dẫn đường dẫn đường
Intra-AS Inter-AS Intra-AS thiết lập các
điểm vào cho các đích 3c
Bảng
3a 2c
phía trong 3b 2a
chuyển tiếp AS3 2b
Inter-AS và Intra-As thiết 1c AS2
lập các điểm vào cho các 1a 1b AS1
đích phía ngoài 1d
1-83 1-84
86
1-85 1-86
Chương 4: Tầng mạng Dẫn đường Intra-AS
❑ 4.1 Tổng quan ❑ 4.5 Thuật toán dẫn ❑ Còn gọi là Interior Gateway Protocols (IGP)
❑ 4.2 Mạng Virtual circuit đường ❑ Các giao thức dẫn đường Intra-AS phổ biến:
và datagram Link state
Distance Vector RIP: Routing Information Protocol
❑ 4.3 Bên trong Router
Hierarchical routing OSPF: Open Shortest Path First
❑ 4.4 IP: Internet Protocol
❑ 4.6 Dẫn đường trong IGRP: Interior Gateway Routing Protocol (sở hữu
Định dạng Datagram
Internet của Cisco)
Địa chỉ IPv4
RIP
ICMP
OSPF
IPv6
BGP
❑ 4.7 Dẫn đường
broadcast và multicast
1-87 1-88
❑ 4.1 Tổng quan ❑ 4.5 Thuật toán dẫn ❑ Thuật toán Distance vector
❑ 4.2 Mạng Virtual circuit đường ❑ Trong BSD-UNIX Distribution, 1982
và datagram Link state
❑ Độ đo khoảng cách: số hop (tối đa = 15 hop)
Distance Vector
❑ 4.3 Bên trong Router
Hierarchical routing
❑ 4.4 IP: Internet Protocol
❑ 4.6 Dẫn đường trong
Định dạng Datagram u đích hop
Internet v
u 1
Địa chỉ IPv4
RIP A B w v 2
ICMP w 2
OSPF
IPv6 x 3
BGP x y 3
❑ 4.7 Dẫn đường z C D z 2
y
broadcast và multicast
87
1-89 1-90
Thông báo của RIP RIP: Ví dụ
z
❑ Distance vector: trao đổi giữa các hàng xom
mỗi 30s qua Response Message (còn gọi là w x y
A D B
advertisement – thông báo)
❑ Mỗi thông báo: danh sách tới 25 mạng đích C
trong AS Mạng đích Router tiếp Số hop để tới đích
w A 2
y B 2
z B 7
x -- 1
…. …. ....
Bảng dẫn đường trong D
1-91 1-92
RIP: Ví dụ
RIP: Lỗi liên kết và khôi phục
Đích Tiếp Hop
w - -
Thông báo
x - - từ A tới D Nếu không nghe thấy bản tin thông báo sau 180 giây ->
z
….
C
…
4
...
hàng xóm/liên kết đã không hoạt động
z Đường qua hàng xóm mất hiệu lực
w x y Không gửi thông báo đến các hàng xóm đó
A D B Các hàng xóm gửi thông báo mới (nếu bảng thay
thay đổi)
C Thông tin lỗi liên kết nhanh chóng lan truyền toàn
Mạng đích Router tiếp Số hop tới đích
mạng
w A 2
poison reverse sử dụng để ngăn chặn vòng lặp ping-
y B 2
z BA 75 pong (khoảng cách không giới hạn = 16 hops)
x -- 1
…. …. ....
Bảng dẫn đường trong D
88
1-93 1-94
RIP: Xử lý bảng Chương 4: Tầng mạng
❑ Bảng dẫn đường của RIP quản lý bởi tiến trình mới ❑ 4.1 Tổng quan ❑ 4.5 Thuật toán dẫn
ứng dụng gọi là route-d (daemon) ❑ 4.2 Mạng Virtual circuit đường
❑ Các thông báo được gửi trong các gói tin UDP, lặp lại và datagram Link state
định kỳ Distance Vector
❑ 4.3 Bên trong Router
Hierarchical routing
routed routed ❑ 4.4 IP: Internet Protocol
❑ 4.6 Dẫn đường trong
Định dạng Datagram
Internet
Transport Transprt Địa chỉ IPv4
(UDP) (UDP) RIP
ICMP
network bảng bảng network OSPF
IPv6
(IP) chuyển tiếp chuyển tiếp (IP) BGP
link link ❑ 4.7 Dẫn đường
physical physical broadcast và multicast
1-95 1-96
1-99 1-
100
❑ 4.1 Tổng quan ❑ 4.5 Thuật toán dẫn ❑ BGP (Border Gateway Protocol): chuẩn phố
❑ 4.2 Mạng Virtual circuit đường biến (nhưng không chính thức)
và datagram Link state ❑ BGP cung mỗi mỗi AS cách thức để:
Distance Vector
❑ 4.3 Bên trong Router 1. Có thông tin tới subnet từ các AS hàng xóm.
Hierarchical routing
❑ 4.4 IP: Internet Protocol 2. Lan truyền thông tin tới các subnet tới mọi router
❑ 4.6 Dẫn đường trong trong AS
Định dạng Datagram
Internet Xác định các đường đi tốt tới các subnet dựa trên
Địa chỉ IPv4 3.
RIP thông tin tới các subnet
ICMP
OSPF
IPv6 ❑ Cho phép một subnet quảng cáo thông tin về
BGP
sự tồn tại của nó tới phần còn lại của
❑ 4.7 Dẫn đường
Internet: “I am here”
broadcast và multicast
90
1- 1-
101 102
Cơ bản về BGP Phân phối thông tin tới đích
❑ Các cặp router (BGP peer) trao đổi thông tin dẫn ❑ Với phiên eBGP giữa 3a và 1c, AS3 gửi thông tin tới đích prefix
đường qua các kết nối TCP bán cố định: Phiên BGP tới AS1
❑ Chú ý: Các phiên BGP không tương ứng với liên kết ❑ Sau đó, 1c có thể sử dụng iBGP để phân phối thông tin tới đích
vật lý prefix mới tới mọi router trong AS1
❑ Sau đó, 1b có thể quảng báo lại thông tin mới tới AS2 qua phiên
❑ Khi AS2 quảng cáo prefix tới AS1, AS2 hy vọng nó sẽ eBGP 1b-tới-2a
chuyển tiếp bất kỳ datagram dự định tới prefix ❑ Khi router học về prefix mới, nó tạo một điểm vào cho prefix
AS2 có thể kết tập các prefix trong các thông báo của nó trong bảng chuyển tiếp của nó
3c 3c
3a 2c 3a 2c
3b 2a 3b 2a
AS3 2b AS3 2b
1c AS2 1c AS2
1a 1a
1b 1b
AS1 1d AS1 1d
Phiên eBGP Phiên eBGP
Phiên iBGP Phiên iBGP
1- 1-
103 104
91
1- 1-
105 106
Bản tin BGP Chính sách dẫn đường của BGP
legend: provider
❑ Các bản tin BGP trao đổi sử dụng TCP. B network
X
❑ Bản tin BGP: W A
customer
OPEN: mở kết nối TCP tới peer và xác thực bên gửi C network:
UPDATE: quảng cáo đường đi mới (hoặc thu hồi
Y
đường đi cũ)
Figure 4.5-BGPnew: a simple BGP scenario
KEEPALIVE giữ kết nối khi không có UPDATE, tương ❑ A,B,C là mạng của nhà cung cấp
tự ACK tới yêu cầu OPEN
❑ X,W,Y là khách hàng (của mạng nhà cung cấp)
NOTIFICATION: thông báo về các lỗi trong bản tin
❑ X là dual-homed: nối tới 2 mạng
trước, cũng sử dụng để đóng kết nối
X không muốn dẫn từ B qua X tới C
.. vì vậy, X sẽ không quảng cáo tới B đường đi tới C
1- 1-
107 108
A A
A
B B
B c c
c
D D
D F E F E
F E
G G
G
(a) Broadcast khởi tạo tại A (b) Broadcast khởi tạo tại D
Reverse path forwarding
Broadcast dọc theo spanning tree
93
1- 1-114
113
Dẫn đường Multicast: Bài toán
A A
❑ Mục đích: Tìm một tree (hoặc các tree) kết nối
3
B B
c c
4
các router có local mcast group members
2
D D tree: Không phải mọi đường giữa các router được sử dụng
F E F E source-based: Cây khác nhau từ mỗi bên gửi tới bên nhận
1 5
G G shared-tree: Cây giống nhau sử dụng bởi tất cả các group
(a) Bước xây dựng (b) Spanning tree đã xây
member
dựng
Các cách tiếp cận để xây dựng mcast Cây đường đi ngắn nhất
tree
Cách tiếp cận: ❑ mcast forwarding tree: cây đường đi ngắn
❑ source-based tree: một cây cho mỗi nguồn
nhất dẫn đường từ nguồn tới mọi đích
Thuật toán Dijkstra
Cây đường đi ngắn nhất
Reverse path forwarding S: nguồn Ghi chú:
❑ group-shared tree: Group sử dụng một cây R1 2
1 R4 router nối với group member
minimal spanning (Steiner)
R2
center-based tree 5
router không nối với
3 4
R5 group member
…Chúng ta xem xét các cách tiếp cận một cách cơ bản, 6 Liên kết sử dụng để chuyển tiếp,
R3 i
sau đó xem xét các giao thức sử dụng các cách tiếp cận R6 R7 i chỉ thứ tự liên kết được thêm
bởi thuật toán
đó
94
Reverse Path Forwarding Reverse Path Forwarding: Ví dụ
S: nguồn
Chú thích
❑ Dựa vào kiến thức của router về đường đi R1
R4 router nối với group member
ngắn nhất unicast từ nó tới bên gửi
R2
❑ Mỗi router có hành vi chuyển tiếp đơn giản: router không nối với
R5 group member
R3 datagram sẽ được
if (mcast datagram nhận trên liên kết đến trên R6 R7 chuyển tiếp
đường ngắn nhất trở lại trung tâm) datagram sẽ không được
chuyển tiếp
then làm tràn datagram trên mọi liên kết đi
else bỏ qua datagram • Kết quả là một source-specific reverse SPT
– có thể là sự lựa chọn tồi với các liên kết không đối
xứng
R1
❑ Không sử dụng trong thực tế:
router nối với
R4
group member Độ phức tạp tính toán
R2 router không nối với Cần thông tin về toàn bộ mạng
P group member
P Chạy lại khi một router gia nhập hay rời khỏi
R5 Tỉa bản tin
R3 P Liên kết với multicast
R6 R7 forwarding
95
Center-based tree Center-based tree: ví dụ
❑ Tất cả dùng chung một cây Giả sử R6 được chọn làm trung tâm:
❑ Một router được xác định là “trung tâm” của
cây Chú thích
R1
❑ Gia nhập: R4
router nối với
3 group member
edge router gửi unicast join-msg tới center router router không nối với
R2
join-msg được xử lý bởi intermediate routers và 2 group member
1
chuyển tiếp tới center R5 Thứ tự đường đi trong đó
các join msg sinh ra
join-msg hoặc tới nhánh của cây có trung tâm này, R3
1 R6 R7
hoặc đến trung tâm
Đường đi mà join-msg tham gia trở thành một
nhánh mới của cây cho router này
So sánh kiểu đông đúc và thưa thớt PIM- Chế độ đông đúc
Đông đúc: Thưa thớt: flood-and-prune RPF, tương tự DVMRP
❑ Thành viên nhóm tới khi ❑ Không là thành viên tới khi nhưng
router chính thức tỉa router chính thức gia nhập
❑ Giao thức unicast phía dưới cung cấp thông tin
❑ Xây dựng data-driven ❑ Xây dựng receiver- driven
RPF cho datagram tới
dựa trên mcast tree (ví của mcast tree (ví dụ:
❑ Downstream flood ít phức tạp hơn (kém hiệu quả
dụ: RPF) center-based)
hơn) DVMRP giảm sự tin cậy vào thuật toán dẫn
❑ bandwidth và non-group- ❑ bandwidth và non-group-
đường phía dưới
router xử lý thoải mái router xử lý dè dặt
❑ Có cơ chế giao thức cho router phát hiện nó là
router nút lá
97
PIM – Chế độ thưa thớt PIM – Chế độ thưa thớt
❑ Cách tiếp cận center- Bên gửi (s):
based ❑ Dữ liệu unicast tới RP,
❑ Router gửi join msg tới R1 nó phân phối xuống R1
điểm hẹn (RP) gia nhập
R4
RP-rooted tree gia nhập
R4
Các intermediate router
cập nhật trạng thái và R2
gia nhập ❑ RP có thể mở rộng R2
gia nhập
chuyển tiếp join mcast tree upstream tới
R5 R5
❑ Sau khi gia nhập qua gia nhập nguồn gia nhập
RP, router có thể R3 R7 R3 R7
R6 ❑ RP có thể gửi stop msg R6
chuyển tới source-
specific tree nếu không có người
Mọi dữ liệu multicast Điểm hẹn Tất cả dữ liệu điểm hẹn
Tăng hiệu năng: giảm tập từ điểm hiẹn nhận nối vào multicast
chung, đường đi ngắn “không ai đang nghe!” từ điểm hẹn
hơn
98
1-
133
Nội dung chương 2 1.Giới thiệu chung
1. Giới thiệu chung Chức năng
2. Địa chỉ IP • Chuyển tiếp: di chuyển các gói tin từ đầu vào của BĐT tới đầu ra
3. Định tuyến thích hợp
4. Giao thức IP, ARP, ICMP • Định tuyến: xác định đường đi cho gói tin từ nguồn tới đích -> các
giao thức định tuyến
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
99
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
2. Địa chỉ IP (IPv4) 2. Địa chỉ IP (IPv4)
Địa chỉ IP: một số 32 bit để Ký hiệu thập phân có chấm
định danh giao diện máy
trạm, bộ định tuyến
Mỗi địa chỉ IP được gán cho
một giao diện
Địa chỉ IP có tính duy nhất
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
100
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
2. Địa chỉ IP (IPv4)
Đ/chỉ Broadcast Đ/chỉ mạng
Khi muốn gửi thông điệp đến tất cả các máy trong mạng nội bộ, đó là • Không chỉ các thiết bị mới có địa chỉ IP, mà các mạng thành phần
lúc ta cần sử dụng đến địa chỉ Broadcast. của Internet hay mạng cục bộ cũng có một địa chỉ để xác định chính
xác mạng đó.
Địa chỉ Broadcast là địa chỉ mà các bits phần host-id là 1.
• Khi tất cả các bits phần Host của một địa chỉ IP là 0, thì địa chỉ đó
Khi gói tin được gửi đến địa chỉ Broadcast, thì nó sẽ được gửi tới tất
được gọi là địa chỉ mạng của mạng đó. Vì đại diện cho mạng nên địa
cả các máy cùng mạng, tức là cùng phần net-id. Vì đại diện cho toàn
chỉ mạng cũng không thể đặt được cho bất kz thiết bị nào.
bộ thiết bị trong mạng nên địa chỉ Broadcast không thể đặt được cho
bất kz thiết bị nào. • Ví dụ: 192.168.1.0/24 là địa chỉ mạng của mạng 192.168.1.0/24.
Ví dụ: 192.168.1.255/24 là địa chỉ Broadcast của mạng
192.168.1.0/24.
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
103
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
2. Địa chỉ IP (IPv4) 2. Địa chỉ IP (IPv4)
Địa chỉ IP và mặt nạ mạng
Địa chỉ nào là địa chỉ máy trạm, địa chỉ mạng, địa chỉ quảng bá?
(1) 203.178.142.128 /25
(2) 203.178.142.128 /24
(3) 203.178.142.127 /25
(4) 203.178.142.127 /24
Lưu {: với cách địa chỉ hóa theo CIDR, địa chỉ IP và mặt nạ mạng
luôn phải đi cùng nhau.
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
104
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
Subnet Subnet
4 subnets cần 2 bits 2. Liệt kê ID của các subnet mới
• Subnet mask: 11111111 11111111 11000000 00000000 (hoặc
1. Y = 2X (Y: số subnet, X: số bit cần thêm)
255.255.192.0)
- Subnet mask sẽ cần 16 (bit trước đây) + 2 (bit mới) = 18 bits
• networkID của 4 subnets mới là:
- Địa chỉ IP mới: 139.12.0.0/18
1. 10001011.00001100.00000000.00000000
- Con số hosts tối đa có trong mỗi Subnet sẽ là: ((2^14) –2) = 139.12.0.0/18
16,382. Và tổng số các hosts trong 4 Subnets là: 16382 * 4 =
65,528 hosts 2. 10001011.00001100.01000000.00000000
139.12.64.0/18
3. 10001011.00001100.10000000.00000000
139.12.128.0/18
4. 10001011.00001100.11000000.00000000
139.12.192.0/18
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
105
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
2. Địa chỉ IP (IPv4) 2. Địa chỉ IP (IPv4)
Bài tập Bài tập
1. Cho mạng 192.168.155.0/ 24. Chia mạng này thành các mạng con 2. Phương pháp tính (tt):
cho các phòng ban sau: Phòng A: 80 máy, phòng B: 60 máy, 2 Ta thấy, mạng 192.168.155.0/25 có 7 bits host-id, biểu diễn được
phòng C, D: mỗi phòng 25 máy. 127 máy, đủ cho phòng A, nên ta gán mạng này cho phòng A.
2. Phương pháp tính:
Đầu tiên ta có địa chỉ IP và các bit phần net-id:
Với địa chỉ 192.168.155.128/25, ta lại mượn 1 bit host-id chuyển
qua làm net-id, được 2 mạng con như sau:
11000000 10101000 10011011 00000000
trừ địa chỉ mạng và broadcast ra, thì mạng này có tối đa 254 máy. 11000000 10101000 10011011 10000000 hay 192.168.155.128/26
Mượn 1 bit host-id chuyển qua làm net-id, được 2 mạng con như sau: 11000000 10101000 10011011 11000000 hay 192.168.155.192/26
11000000 10101000 10011011 00000000 hay 192.168.155.0/25
11000000 10101000 10011011 10000000 hay 192.168.155.128/25
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
106
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
2. Địa chỉ IP (IPv4) 2. Địa chỉ IP (IPv4)
BÀI TẬP TỰ LÀM
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
107
Chương 3: Tầng mạng - Network layer 40 Chương 3: Tầng mạng - Network layer 41
2. Địa chỉ IP (IPv4) 2. Địa chỉ IP (IPv4)
Địa chỉ một host trong cùng mạng Địa chỉ loopback
Chương 3: Tầng mạng - Network layer 42 Chương 3: Tầng mạng - Network layer 43
•DHCP: Dynamic Host Configuration Protocol: Giao thức cấu hình địa Tổng quan DHCP:
chỉ động - máy khách phát tán thông điệp “DHCP discover”
- “plug-and-play” - máy chủ DHCP trả lời với thông điệp “DHCP offer”
- khách yêu cầu địa chỉ IP: th/điệp “DHCP request”
- máy chủ DHCP gửi địa chỉ: t/điệp “DHCP ack
108
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
3. Giao thức DHCP 3. Giao thức DHCP
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
109
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
4. Dịch địa chỉ mạng 4. Dịch địa chỉ mạng
NAT: Sự dịch địa chỉ mạng NAT: Sự dịch địa chỉ mạng
Động lực: mạng nội bộ sử dụng chỉ một địa chỉ IP cho việc liên lạc với Hiện thực: bộ định tuyến NAT phải:
bên ngoài:
• gói tin đi ra: thay thế (IP nguồn, số cổng) của mọi gói tin đi ra thành
• không cần một dải địa chỉ từ ISP: chỉ một địa chỉ IP cho tất cả các
(IP NAT, số cổng mới)
thiết bị ... khách/chủ từ xa sẽ trả lời sử dụng (IP NAT, số cổng mới) làm địa chỉ
• có thể thay đổi địa chỉ của thiết bị trong mạng cục bộ mà không ảnh đích.
hưởng đến thế giới bên ngoài
• ghi nhớ (trong bảng dịch NAT) mọi cặp dịch từ (IP nguồn, số cổng)
• có thể thay đổi ISP mà không thay đổi địa chỉ của thiết bị trong
tới (IP NAT, số cổng mới)
mạng cục bộ
• các thiết bị trong mạng cục bộ không được đánh địa chỉ công cộng, • gói tin đi vào: thay thế (IP NAT, số cổng mới) trong trường đích của
có thể thấy đươc bởi mạng ngoài (một điểm cộng cho bảo mật). mọi gói tin đi vào bằng (IP nguồn, số cổng) tương ứng lưu trong
bảng NAT
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
111
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
5. Định tuyến 5. Định tuyến
Bên trong Router Bên trong Router
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
112
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
5. Định tuyến 5. Định tuyến
Một số ví dụ Bảng chọn đường
Chỉ ra danh sách các đường đi có thể, được lưu trong bộ nhớ của
router
Các thành phần chính của bảng chọn đường:
-Địa chỉ đích/mặt nạ mạng
-Router kế tiếp
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
113
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
5. Định tuyến 5. Định tuyến
Cập nhật bảng chọn đương Cập nhật bảng chọn đương
Sự thay đổi cấu trúc mạng: them mạng mới, một nút mạng bị mất Chọn đường tĩnh: các mục trong bảng chọn đường được sửa đổi thủ
điện công bởi người quản trị
Sự cần thiết phải cập nhật bảng chọn đường Chọn đường động:
-Cho tất cả các nút mạng -Tự động cập nhật bảng chọn đương
-Thực tế, chỉ một số nút mạng phải cập nhật -Bằng các giao thức chọn đường
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
114
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
5. Định tuyến 5. Định tuyến
Ưu, nhược điểm Các giải thuật và giao thức chọn đường
-Giải thuật Dijkstra và Bellman-Ford
Chọn đường tĩnh Chọn đường động
-Giao thức dạng Link-state và Distance-vector
• Ổn định • Dễ quản l{
Ưu điểm • An toàn • Tự động sử dụng kết
• Không bị ảnh hưởng bới các nối dự phòng
yếu tố tác động
• Cứng nhắc • Tính an toàn
Nhược • Không thể sử dụng tự động • Các giao thức chọn
điểm kết nối dự phòng đường phức tạp và
• Khó quản l{ khó hiểu
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
115
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
5. Định tuyến 5. Định tuyến
Thuật toán Dijkstra Giải thuật dạng Distance-vector
Phương trình Bellman-Ford (quy hoạch động)
dx(y) = chi phí của đường đi ngắn nhất từ x tới y
Ta có:
dx(y) = min { c(x,v) + dv(y) }
v
Cho tất cả các v là hàng xóm của x
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
116
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
6. Giao thức IP 6. Giao thức IP
Định dạng gói tin IP Vị trí của IP
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
Mỗi gói tin có thể được định tuyến theo những đường đi khác
nhau để tới đích; các gói tin khi đến đích có thể không đúng
trật tự khi gửi đi.
117
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
6. Giao thức IP 6. Giao thức IP
Một IPv4 Datagram bao gồm
◦ Phần header : kích thước từ 20-60 bytes;
20-byte đầu có cấu trúc cố định (xem hình)
◦ Phần data : là toàn bộ gói dữ liệu được chuyển đến từ tầng
transport
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
118
Chương 3: Tầng mạng - Network layer Chương 3: Tầng mạng - Network layer
6. Giao thức IP
IPv4 Datagram
•Source IP address : địa chỉ IP đích
•Destination IP address : địa chỉ IP nguồn
•ICMP: Internet Control Message Protocol
•Phân mảng và tổng hợp IP
119
Mục lục
Chương 1: Tổng quan về mạng máy tính
1.1 Một số khái niệm cơ bản trong Internet Page 2
1.2 Network edge: Rìa mạng Page 4
1.3 Network core: Nhân mạng Page 5
1.4 Network access và physical media Page 8