You are on page 1of 199

 Chương 1, 2, 3: 20%

 Tập trung phần điều khiển tắt nghẽn TCP, 2-3 câu với 1 sơ đồ
 Chương 1: Tổng quan các tầng, đơn vị dữ liệu giao thức ở các tầng, bài tập 4
nguồn gây ra độ trễ
 Chương 2: Bài tập về các đối tượng HTTP, các giao thức và port mặc định
 Chương 3: Bài tập SEQ, ACK TCP. Bài tập tính checksum. Bài tập điều khiển tắc
nghẽn
 Chương 4: 50%
 BT chia mạng con
 BT các thuật toán routing Link-state, Distance Vector
 IPv4
 Chương 5: 30%
 Bài tập tính Checksum, Bit Parity, CRC
 Các giao thức đa truy cập ALOHA, CSMA, CSMA/CD
 BT xác định địa chỉ MAC
CHƯƠNG 3
TẦNG TRANSPORT
3.1. Điều khiển luồng trong TCP
3.2. Điều khiển tắc nghẽn trong TCP
Tình huống 1: Lặp có lựa chọn
sender window (N=4) sender receiver
012345678 send pkt0
012345678 send pkt1
012345678 send pkt2 receive pkt0, send ack0
012345678 send pkt3 Xloss receive pkt1, send ack1
(wait)
receive pkt3, buffer,
012345678 rcv ack0, send pkt4 send ack3
012345678 rcv ack1, send pkt5
receive pkt4, buffer,
record ack3 arrived send ack4
receive pkt5, buffer,
pkt 2 timeout send ack5
012345678 send pkt2
012345678 (but not 3,4,5)
012345678 rcv pkt2; deliver pkt2,
012345678 pkt3, pkt4, pkt5; send ack2
TCP điều khiển luồng
application
process
Ứng dụng lấy dữ liệu từ bộ
nhớ đệm của TCP socket
TCP socket
receiver buffers

TCP
code
Tầng Network mở gói
IP packet và chuyển
lên tầng Transport
IP
code

from sender

receiver protocol stack


TCP điều khiển luồng
32 bits

receive window flow control: # bytes receiver


willing to accept
TCP điều khiển luồng
 Bên nhận sẽ giới hạn số lượng bytes
có thể nhận hiện tại ở trường rwnd to application process

 Bên gửi giới hạn số lượng bytes gửi RcvBuffer buffered data
trong gói tin kế tiếp, theo giá trị rwnd
nhận được rwnd free buffer space

TCP segment payloads

TCP receiver-side buffering


TCP điều khiển tắc nghẽn
 Bên gửi tăng tốc độ truyền (kích thước cửa sổ hay
cwnd), thăm dò băng thông có thể sử dụng, cho đến
khi mất mát gói xảy ra thì giảm tốc độ truyền.

Tốc độ gửi ở sender

time
TCP điều khiển tắt nghẽn

sender sequence number space


cwnd  Slow Start
 Congestion Avoidance
 Fast Recovery
last byte
ACKed sent, but not- available but
yet ACKed not used
(“in-flight”) last byte sent
.
new ACK
duplicate ACK
cwnd = cwnd + MSS (MSS/cwnd)
dupACKcount++ new ACK dupACKcount = 0
cwnd = cwnd+MSS transmit new segment(s), as allowed
dupACKcount = 0
L transmit new segment(s), as allowed
cwnd = 1 MSS
ssthresh = 64 KB cwnd > ssthresh
dupACKcount = 0
slow L congestion
start timeout avoidance
ssthresh = cwnd/2
cwnd = 1 MSS duplicate ACK
timeout dupACKcount = 0 dupACKcount++
ssthresh = cwnd/2 retransmit missing segment
cwnd = 1 MSS
dupACKcount = 0
retransmit missing segment
timeout
ssthresh = cwnd/2
cwnd = 1 New ACK
dupACKcount = 0
cwnd = ssthresh dupACKcount == 3
dupACKcount == 3 retransmit missing segment dupACKcount = 0
ssthresh= cwnd/2 ssthresh= cwnd/2
cwnd = ssthresh + 3 cwnd = ssthresh + 3
retransmit missing segment
fast retransmit missing segment

recovery
duplicate ACK
cwnd = cwnd + MSS
transmit new segment(s), as allowed
TCP Slow Start
Host A Host B

 Khi bắt đầu kết nối,


tăng tốc độ theo cấp one segm
ent

RTT
số nhân cho đến sự
kiện mất gói đầu tiên two segm
ents

• Ban đầu cwnd = 1 MSS


• Gấp đôi cwnd mỗi RTT four segm
ents
Chuyển từ Slow Start qua Congestion Avoidance

Congestion Avoidance: Tránh tắc


nghẽn
- Ở giai đoạn này cwnd tăng X
tuyến tính

SSThresh (Slow Start Threshold)


- Khi cwnd đạt đến ngưỡng này
sẽ chuyển sang Congestion
Avoidance

SSThresh có thể thay đổi


Fast Recovery

 Khi xảy ra 3-ACK trùng nhau:


 ssthresh = cwnd / 2
 cwnd = ssthresh + 3
 Bước vào Fast Recovery
 Với mỗi duplicated ACK: cwnd = cwnd + 1
 Với ACK mới: cwnd = ssthresh, trở lại
Congestion Avoidance
Phát hiện, phản ứng khi mất gói

• Phản ứng khi mất gói:


Có 2 trường hợp mà bên gửi
có thể nhận biết được đã bị
mất gói tin • TCP Tahoe
– Mất gói được chỉ ra bởi
Timeout
– Mất gói được chỉ ra bởi • TCP RENO
3 ACK trùng nhau
TCP kiểm soát tắc nghẽn
1. Slow Start: cwnd = cwnd * 2
2. Congestion Avoidance (CA): cwnd = cwnd + 1
3. Congestion:
• SSthresh
• ssthresh = cwnd/2
• TCP Tahoe:
• Cwnd = 1. Sau đó Slow Start, cwnd = cwnd * 2
• TCP RENO
• 3ACK: cwnd = ssthresh + 3 (Fast Recovery). Sau đó Conges. Avoid.
• Timeout: cwnd = 1. Sau đó Slow Start, cwnd = cwnd * 2
Trong TCP RENO, khi gặp 3 ACK trùng nhau, thì giá trị của
congestion window (cwnd) được thiết lập lại bao nhiêu?

A Giảm một nửa rồi cộng thêm 3

B Vẫn giữ giá trị như trước khi gặp 3 ACK trùng nhau

C 0

D 1
17
Cho biểu đồ sau, hãy tìm các thời điểm:

1 Slow Start 3 Timeout

2 Congestion Avoidance 4 3 ACK trùng nhau

5 SSThreshold thay đổi


18
SSThreshold = 8
Đáp án

1 Slow Start: 1, 2, 3, 16, 17, 18, 19, 38, 39, 40

2 Congestion avoidance: 4 - 15, 20 - 33, (35 – 37)

3 Timeout: 15, 37

4 3 ACK trùng nhau: 33

5 SSThreshold thay đổi: 16, 34, 38

20
Cho biểu đồ sau, hãy tìm các thời điểm:

1 Timeout

2 3 ACK trùng nhau

22
SSThreshold = 8
Đáp án

1 Timeout: 22, 32, 35, 39

2 3 ACK trùng nhau: Không có

24
Segment thứ 71 được truyền trong vòng truyền thứ bao nhiêu?
Giả định 1 vòng truyền = 1 RTT

A 1

B 7

C 35

D 6
26
Giao thức TCP Reno được sử dụng trong hình dưới.
Giả sử TCP Tahoe được sử dụng thay cho TCP Reno.
Bên nhận phát hiện mất gói sau RTT thứ 16 do nhận được 3 ACK
trùng nhau. Hỏi giá trị của cwnd và ssthresh ở RTT thứ 20 là bao
nhiêu?

3-ACK
A cwnd = 1 và ssthresh = 32

B cwnd = 8 và ssthresh = 21

C cwnd = 1 và ssthresh = 21

D Tất cả đều sai


27
Giả sử bên nhận phát hiện mất gói sau vòng truyền thứ 26 do
nhận được 3 ACK trùng nhau. Hỏi giá trị của của sổ tắc nghẽn
(cwnd) và ngưỡng (ssthresh) lúc này là bao nhiêu ?

3ACK
A cwnd = 13 và ssthresh = 13

B cwnd = 7 và ssthresh = 4

C cwnd = 1 và ssthresh = 4

D Tất cả đều sai


28
Giá trị ssthresh tại thời điểm t = 27 là bao nhiêu?

A 8

B 4.5

C 4

D 2.5
29
CHƯƠNG 4
TẦNG NETWORK
4.1. Chức năng, IP
4.2. Routing
Routers làm việc ở lớp nào trong mô hình
OSI

A Layer 1

B Layer 2

C Layer 3

D Layer 4
31
Chức năng chính của tầng Network?

A Định tuyến đường truyền

B Điều khiển việc truyền tin tin cậy

C Thêm địa chỉ MAC vào gói tin

D Thêm địa chỉ mạng vào gói tin


32
Cho biết đơn vị dữ liệu giao thức ở tầng
network trong mô hình OSI là gì ?

A Segment

B Frame

C Data

D Datagram (Packet)
33
Lớp nào trong mô hình OSI đóng gói dữ liệu
kèm theo IP Header?

A Network layer

B Link layer

C Physical layer

D Transport layer
34
Giao thức và dịch vụ tầng Network
 Đảm bảo việc truyền thông logic mobile network

giữa các host national or global ISP

• bên gửi: Đóng gói từng segment vào


IP packet và gửi xuống tầng Link application
transport

• bên nhận: Mở gói IP packet thành các


network
link
physical
segment và gửi lên tầng Transport network
link
network
link
physical physical

 Hoạt động ở mọi host, router


network

 routers: link network


physical link
physical network
link datacenter
• xem xét các trường của header trong physical network

tất cả các gói IP datagram đi qua nó application


transport
• Chuyển packet từ cổng vào đến cổng enterprise
network
link

ra phù hợp network physical


Chức năng chính tầng Network
 Forwarding: chuyển các gói tin
(packet) từ đầu vào đến đầu ra
thích hợp của router
 Routing: xác định đường đi
cho các gói từ nguồn đến đích. forwarding
 Thiết lập kết nối routing
Routing và forwarding
Thuật toán routing Thuật toán routing xác định đường
đi của gói giữa 2 đầu cuối
thông qua network
local forwarding table
header value output link
Bảng forwarding xác định việc
0100 3 chuyển gói bên trong một router
0101 2
0111 2
1001 1

Giá trị
trong header
của packet đến
0111 1

3 2
Thiết lập kết nối
 Sử dụng trong một số kiến trúc: ATM, frame relay, X.25

 Dịch vụ kết nối tầng transport so với tầng network :


• network: giữa 2 hosts (cũng có thể bao gồm các router
trung gian trong trường hợp kết nối ảo)
• transport: giữa 2 tiến trình
Một số dịch vụ có thể cung cấp bởi
tầng networt
 Đảm bảo việc phân phối => gói tin sẽ đến đúng đích của nó

 Đảm bảo việc phân phối trong khoảng thời gian nào đó:Không
những đảm bảo gói tin sẽ đến đúng đích mà còn đảm bảo việc
phân phối này trong một khoảng thời gian định trước

 Phân phối gói tin đúng thứ tự: Dịch vụ này đảm bảo gói tin đến
đúng đích theo đúng thứ tự nó được gửi đi

 Các dịch vụ bảo mật: Mã hóa dữ liệu, đảm bảo tín tin cậy khi
truyền dữ liệu
Mô hình dịch vụ mạng
Kiến trúc mạng Mô hình dịch vụ Đảm bảo băng thông Đảm bảo Thứ tự Đảm bảo Báo hiệu
không mất thời gian nghẽn
dữ liệu
Internet Nỗ lực tối đa Không Không Bất kì thứ tự Không Không
(best effort) nào
ATM CBR Tốc độ luôn được giữ vững Có Theo thứ tự Có Không xảy ra
nghẽn
ATM ABR Đảm bảo tốc độ thấp nhất Không Theo thứ tự Không Báo hiệu khi
xảy ra nghẽn
Dịch vụ connection (hướng kết nối) và
connection-less (phi kết nối)
 Mạng datagram cung cấp dịch vụ connectionless tại tầng
network
 Mạng mạch ảo (virtual-circuit network) cung cấp dich vụ
connection tại tầng network
Mạng mạch ảo
 Được dùng trong ATM, frame-relay, X.25

 Không được sử dụng trong Internet ngày nay

application
5. Bắt đầu dòng dữ liệu 6. Nhận dữ liệu application
transport transport
network 4. Cuộc gọi được kết nối 3. Chấp nhận cuộc gọi
1. Khởi tạo cuộc gọi network
data link 2. Cuộc gọi đến
data link
physical physical
Mạng Datagram
 Không thiết lập cuộc gọi tại tầng network

 Mỗi một lần bên gửi muốn gửi 1 gói tin đi, bên gửi sẽ thêm vào gói tin
địa chỉ nguồn gửi và địa chỉ đích sau đó sẽ đẩy gói tin đi trên mạng
(không duy trì trạng thái mạch ảo nào)

 Mỗi gói tin đều có địa chỉ nguồn và đích, bộ định tuyến nhờ đó mà
chuyển gói tin đi
application application
transport transport
network 1. Gởi các datagram 2. Nhận datagram network
data link data link
physical physical
Forwarding table
Thuật toán routing Thuật toán routing xác định đường
đi của gói giữa 2 đầu cuối
thông qua network
local forwarding table
header value output link
Bảng forwarding xác định việc
0100 3 chuyển gói bên trong một router
0101 2
0111 2
1001 1

Giá trị
trong header
của packet đến
0111 1

3 2
Bảng Datagram forwarding
Dãy địa chỉ đích Dãy địa chỉ đích (hệ 2) Link
(hệ 10) interface
200 23 16 0 11001000 00010111 00010000 00000000
đến đến 1
200 23 23 255 11001000 00010111 00010111 11111111
200 23 24 0 11001000 00010111 00011000 00000000
đến đến 2
200 23 24 255 11001000 00010111 00011000 11111111
200 23 25 0 11001000 00010111 00011001 00000000
đến đến 3
200 23 31 255 11001000 00010111 00011111 11111111
Khác 4
Bảng Datagram forwarding
So trùng prefix dài nhất
Khi tìm kiếm 1 mục trong bảng forwarding table cho
địa chỉ đích, dùng prefix dài nhất của địa chỉ cái mà
trùng với địa chỉ đích.

Dãy địa chỉ đích Link Interface


11001000 00010111 00010*** ********* 1
11001000 00010111 00011000 ********* 2
11001000 00010111 00011*** ********* 3
Khác 4
Ví dụ:
DA: 11001000 00010111 00010110 10100001 Interface nào?
DA: 11001000 00010111 00011000 10101010
Bảng Datagram forwarding
So trùng prefix dài nhất
Khi tìm kiếm 1 mục trong bảng forwarding table cho
địa chỉ đích, dùng prefix dài nhất của địa chỉ cái mà
trùng với địa chỉ đích.

Dãy địa chỉ đích Link Interface


11001000 00010111 00010*** ********* 1
11001000 00010111 00011000 ********* 2
match!
11001000 00010111 00011*** ********* 3
Khác 4
Ví dụ:
DA: 11001000 00010111 00010110 10100001 Interface nào?
DA: 11001000 00010111 00011000 10101010
Bảng Datagram forwarding
So trùng prefix dài nhất
Khi tìm kiếm 1 mục trong bảng forwarding table cho
địa chỉ đích, dùng prefix dài nhất của địa chỉ cái mà
trùng với địa chỉ đích.

Dãy địa chỉ đích Link Interface


11001000 00010111 00010*** ********* 1
11001000 00010111 00011000 ********* 2
match!
11001000 00010111 00011*** ********* 3
Khác 4
Ví dụ:
DA: 11001000 00010111 00010110 10100001 Interface nào?
DA: 11001000 00010111 00011000 10101010
Bảng Datagram forwarding
So trùng prefix dài nhất
Khi tìm kiếm 1 mục trong bảng forwarding table cho
địa chỉ đích, dùng prefix dài nhất của địa chỉ cái mà
trùng với địa chỉ đích.

Dãy địa chỉ đích Link Interface


11001000 00010111 00010*** ********* 1
11001000 00010111 00011000 ********* 2
match!
11001000 00010111 00011*** ********* 3
Khác 4
Ví dụ:
DA: 11001000 00010111 00010110 10100001 Interface nào?
DA: 11001000 00010111 00011000 10101010
Một gói tin có địa chỉ như sau. Gói tin có thể
được chuyển tiếp ra cổng liên kết nào?
11001000 00010111 00010110 10100001

A 4
Link
Dãy địa chỉ đích
Interface
B 1 11001000 00010111 00010 1
11001000 00010111 00011000 2
C 2 11001000 00010111 00011 3
Khác 4

D 3
50
Mô hình dịch vụ được sử dụng trong kiến
trúc mạng Internet là:

A Nỗ lực tối đa (best effort)

B CBR (constant bit rate)

C ABR (available bit rate service)

D Tất cả đều sai


51
Tầng network: kiến trúc Internet
Các thành phần chính tầng network trong internet của host và router:

transport layer: TCP, UDP

Các giao thức routing Giao thức IP


• chọn đường đi • các quy ước định địa chỉ
• RIP, OSPF, BGP • định dạng datagram
Tầng • các quy ước quản lý gói
network forwarding
table
Giao thức ICMP
•Thông báo lỗi
• “tín hiệu” router

Tầng link

Tầng physical
Định dạng IPv4 datagram (20 bytes)
Số hiệu phiên bản giao thức IP 32 bits Tổng độ dài datagram (byte)
Độ dài header (4 bit) (*4 bytes) dài (16 bits)
ver head. type of length
=> lớn nhất là 60 bytes len service Dành cho
Loại dịch vụ của kiến trúc Internet fragment phân mảnh/
16-bit identifier flgs
offset tổng hợp
TTL: Số hop còn lại tối đa time to upper header
(giảm xuống tại mỗi router) live layer checksum
32 bit source IP address
Giao thức lớp trên
để đưa payload đến. Ví dụ TCP, UDP 32 bit destination IP address

Tùy chọn (nếu có) Ví dụ: trường


timestamp ghi lại
Dữ liệu (payload) đường đi, danh
(độ dài thay đổi, các router đi đến
thông thường là một
segment TCP
hoặc UDP)
Định dạng IPv4 datagram (20 bytes)
32 bits

ver head. type of length  version: 4 bits, phiên bản giao thức IP
len service
fragment
16-bit identifier flgs
offset
đang sử dụng
time to upper header  IHL (Header length): 4 bits, độ dài của
live layer checksum
32 bit source IP address
Header IP packet dưới dạng word-4-
32 bit destination IP address
byte
 length: 16 bits, độ dài của IP packet tính
Tùy chọn (nếu có)
cả header (đơn vị byte)
Dữ liệu (payload)
(độ dài thay đổi,
 upper layer (Protocol): chỉ ra giao thức
thông thường là một được sử dụng trong phần IP payload
segment TCP
hoặc UDP)
Địa chỉ IP
223.1.1.1
 Địa chỉ IP là 1 địa chỉ 223.1.2.1
logic định danh ứng với
mỗi interface của host. 223.1.1.2
223.1.1.4 223.1.2.9

 Interface: cổng giao 223.1.2.2

tiếp, kết nối giữa host 223.1.1.3


223.1.3.27

và đường liên kết


223.1.3.2
223.1.3.1
Địa chỉ IPv4

 Độ dài 32 bits, thường viết dưới dạng thập phân


 Chia thành 4 nhóm, mỗi nhóm (octet) 8 bits,
cách nhau bởi dấu “.”
 Ví dụ
 Dạng thập phân: 137.54.69.3
 Dạng nhị phân: 10001001 00110110 01000101 00000011
Địa chỉ IPv6
• Độ dài 128 bits, viết dưới dạng thập lục phân
• Chia thành 8 nhóm, cách nhau bởi dấu “:” , mỗi nhóm
16 bits (có nhiều nhất 4 kí tự hexa trong nhóm)
• Các nhóm 0000 liên tiếp được biểu diễn thành “::”,
rút gọn nhóm dài nhất và chỉ được rút gọn 1 lần
• Ví dụ:
Mạng con (subnet) 223.1.1.2

Phương pháp
223.1.1.1 223.1.1.4
 Để xác định các subnet, mỗi
interface của router là 1 vùng 223.1.1.3
mạng
 Mỗi mạng độc lập được gọi là một 223.1.9.2 223.1.7.0

subnet
 Các interface của thiết bị có phần
net của địa chỉ IP giống nhau 223.1.9.1 223.1.7.1
223.1.8.1 223.1.8.0
 Có thể giao tiếp vật lý với nhau mà
223.1.2.6 223.1.3.27
không cần router trung gian can
thiệp 223.1.2.1 223.1.2.2 223.1.3.1 223.1.3.2
Địa chỉ IPv4 gồm bao nhiêu bit

A 6

B 24

C 32

D 48
59
Địa chỉ IPv6 gồm bao nhiêu bit

A 128

B 256

C 512

D 1024
60
Đâu là định dạng đúng của địa chỉ IPv6?

A D539:78A2:949B:C11D:6488:658F:CB6D

B 2222:A1D5::5DC3:F2DE:CF7B

C 2222:A1D5:A5F9:2GH6:711D:5DC3:F2DE:CF7B

D 125.246.254.124.263.325.248.256
61
Trong HEADER của IPv4 packet có chứa

A Source IP address

B Destination IP address

C Source and Destination IP address

D Source and Destination port


62
Trường nào sau đây không tồn tại trong
header của gói tin IPv4 tại tầng mạng?

A Địa chỉ 32 bit của máy nguồn (source IP address)

B Checksum

C Cổng 16 bit của máy nguồn (source port number)

D Time to live (TTL)


63
Phân mảnh và tổng hợp IP

MSS (Maximum Segment Size): Độ dài lớn nhất của phần payload trong 1 segment TCP
MTU (Maximum transmission unit): Độ dài lớn nhất của 1 IP packet (datagram)
Phân mảnh và tổng hợp IP
32 bits
• Các đường link trong mạng có MTU khác nhau
– độ dài lớn nhất của phần data trong frame ver head. type of length
len service Dành cho
• Các kiểu đường link khác nhau, các MTU 16-bit identifier flgs
fragment phân mảnh/
offset
khác nhau time to upper header
tổng hợp
• Ethernet: 1500 bytes live layer checksum
• 802.11 (Wifi): 2304 bytes 32 bit source IP address
32 bit destination IP address
• IP packet (datagram) lớn hơn MTU của đường
link -> được phân mảnh (“fragmented”) Tùy chọn (nếu có)
• “tổng hợp” chỉ được thực hiện ở đích cuối Dữ liệu
cùng (độ dài thay đổi,
thông thường là một
• Các bit của IP header được sử dụng để
segment TCP
xác định, sắp đặt các fragment liên quan hoặc UDP)
Phân mảnh và tổng hợp IP
length ID fragflag offset
Ví dụ: =4000 =x =0 =0
 4000 byte datagram 1 datagram lớn thành vài datagram nhỏ hơn
 MTU = 1500 bytes

1480 bytes length ID fragflag offset


trong trường dữ liệu =1500 =x =1 =0

offset = length ID fragflag offset


1480/8 =1500 =x =1 =185

length ID fragflag offset


=1040 =x =0 =370

 Trường fragflag: bằng 1 khi còn fragment kế tiếp, 0 khi là mảnh cuối
 1 đơn vị offset = 8 bytes dữ liệu payload IP packet
Phân mảnh và tổng hợp IP
 Trường Length: độ dài của IP packet tính cả header (đơn vị byte)
Giả sử IP header có độ dài là 20 bytes (tối thiểu)

Phần dữ liệu của gói IP thực tế: payload IP = length – 20

 MTU = IP header + max payload IP => max payload IP = MTU – IP header


Vậy số mảnh (fragment) = (payload IP // max payload IP) + 1
Phân mảnh và tổng hợp IP
 1 cụm offset dài 8 bytes.
length ID fragflag offset
 1 fragment có length = 1500 bytes thì: =1500 =x =1 =0
 payload IP = 1500 – IP header length ID fragflag offset
= 1500 – 20 =1500 =x =1 =185
= 1480 length ID fragflag offset
 có 1480/8 = 185 cụm offset =1040 =x =0 =370
Nếu 1 gói tin IP packet được chia thành 3 gói tin nhỏ thì?

A Cả 3 gói nhỏ đều có cờ Fragment flag bật lên thành 1

B Trường Framet offset cả 3 gói nhỏ giống nhau

C Chỉ có gói nhỏ đầu tiên có cờ Fragment flag bật lên thành 1

D Trường Identification (ID) của cả 3 gói nhỏ giống nhau


69
Khi gửi một gói tin IPV4 có kích thước là 4.560 byte vào
một mạng có kích thước của MTU là 1500 byte. Biết kích
thước của phần header các gói tin là 20 byte, kích thước
của gói tin cuối cùng là ?

A 60 byte

B 560 byte

C 360 byte

D 120 byte
70
Router R có MTU là 1500 bytes. Một IP Datagram
kích thước 6000 bytes được R phân mảnh. Tất cả các IP
packet có header length là 20 bytes. Hỏi giá trị trường
offset của mảnh (fragment) cuối cùng?

A 740

B 739

C 555

D 530
71
Địa chỉ IP
NETWORK HOST

32 bits

 Để phân biệt 2 phần, sử dụng Subnet mask và Prefix length


 Subnet mask là một dải 32 bit nhị phân đi kèm với 1 địa chỉ
IP được các host sử dụng để xác định địa chỉ mạng của địa
chỉ IP này.
 Prefix, là một số thập phân, chỉ ra số bit phần network
trong một địa chỉ IP
Subnet mask và prefix length
 Subnet mask: dãy 32 bits đi kèm với địa chỉ IP
 Bit 1 đánh dấu là phần Network, bit 0 là phần host
 Ví dụ: 172.16.2.3 (255.255.0.0)
10101100 00010000 00000010 00000011
11111111 11111111 00000000 00000000
Network Host

 Prefix length:
 Ví dụ: 172.16.2.3/16
Địa chỉ mạng và địa chỉ broadcast

 Địa chỉ mạng có tất cả các bit phần host bằng 0


 Địa chỉ broadcast có tất cả các bit phần host bằng 1
 Địa chỉ mạng là địa chỉ đại diện cho 1 mạng, được sử dụng cho các
thuật toán định tuyến
 Địa chỉ broadcast được sử dụng để gửi broadcast
Các lớp địa chỉ IP
E
D 6%
6%
C
13% A
50%
B
25%
Địa chỉ dành riêng

 Mạng 0.0.0.0/8: 0.0.0.0 – 0.255.255.255


 Mạng 127.0.0.0/8: 127.0.0.0 – 172.255.255.255
 Địa chỉ dành riêng cho mạng cục bộ:
 Lớp A: 10.0.0.0 – 10.255.255.255
 Lớp B: 172.16.0.0 – 172.31.255.255
 Lớp C: 192.168.0.0 – 192.168.255.255
 Những địa chỉ này không xuất hiện trên Internet
Trong địa chỉ IP, có 5 lớp A, B, C ,D ,E. Lớp B là lớp có
dãy địa chỉ:

A 192.0.0.0 tới 223.255.255.255

B 240.0.0.0 tới 255.255.255.255

C 224.0.0.0 tới 239.255.255.255

D 128.0.0.0 tới 191.255.255.255


77
Byte đầu tiên của một địa chỉ IP có dạng: 11011011.Vậy
nó thuộc lớp nào?

A C

B D

C A

D B
78
Cho địa chỉ IP: 172.16.8.159 và subnet mask tương ứng
255.255.255.192. Xác định địa chỉ mạng và địa chỉ
broadcast của subnet trên?

A 172.16.8.128, 172.16.8.191

B 172.16.8.0, 172.16.8.192

C 172.16.8.128, 172.16.8.255

D 172.16.0.128, 172.16.8.255
79
Cho địa chỉ IP 192.168.25.91/26, Subnet Mask sẽ là:

A 255.255.255.128

B 255.255.255.224

C 225.224.255.240

D 255.255.255.192
80
Subnet Mask nào sau đây là hợp lệ:

A 0.255.255.255

B 0.0.0.255

C 255.0.0.255

D 255.255.255.0
81
Hai địa chỉ IP sau có cùng subnet hay không?
172.16.200.100/23 và 172.16.201.200/23

82
Ngữ cảnh DHCP
Làm thế nào để 1 host có được địa chỉ IP của mạng đó?

 Cấu hình tĩnh


 Chỉ việc kết nối vào mạng, “plug-and-play” và lấy địa chỉ IP từ server
 DHCP: Dynamic Host Configuration Protocol
 Tại sao lại cần có DHCP?
Ngữ cảnh DHCP

Tổng quan:
 Quá trình 4 bước: DORA
 DHCP discover msg [optional]
 DHCP offer msg [optional]
 DHCP request msg
 DHCP ack msg
 DHCP hoạt động theo kiến trúc client-server, được đóng gói trong 1 gói
tin UDP:
 Server-port: 67
 Client-port: 68

Network Layer: 4-84


Ngữ cảnh DHCP client-server
DHCP server: 223.1.2.5 DHCP discover Arriving client
src : 0.0.0.0, 68
Broadcast: is there a
dest.: 255.255.255.255,67
DHCP server out there?
yiaddr: 0.0.0.0
transaction ID: 654

DHCP offer
src: 223.1.2.5, 67
Broadcast: I’m a DHCP
dest: 255.255.255.255, 68
server! Here’s an IP
yiaddrr: 223.1.2.4
transaction ID: 654
address
lifetime:you
3600can
secs use
The two steps above can
DHCP request be skipped “if a client
src: 0.0.0.0, 68 remembers and wishes to
dest:: 255.255.255.255, 67 reuse a previously
Broadcast: OK. I would
yiaddrr: 223.1.2.4 allocated network address”
like to transaction
use thisID: IP655
address! [RFC 2131]
lifetime: 3600 secs

DHCP ACK
src: 223.1.2.5, 67
dest: 255.255.255.255, 68
Broadcast: OK. You’ve
yiaddrr: 223.1.2.4
gottransaction
that IPID:address!
655
lifetime: 3600 secs
Giá trị trả về trong DHCP
Bên cạnh địa chỉ IP thì DHCP
còn cung cấp thêm:
 Địa chỉ IP của first-hop router,
hay còn là default gateway.
 Mặt nạ mạng (network mask)
 Địa chỉ IP của DNS server

Network Layer: 4-86


Chọn phát biểu đúng:

A Địa chỉ động là do máy chủ DHCP cấp

B Địa chỉ tĩnh do máy chủ DHCP cấp

C DHCP chỉ dùng cho mạng có quy mô lớn

87
Trong 1 gói IPv4 DHCP request thì:

A Trường “src” chứa giá trị 255.255.255.255

B Trường “src” chứa địa chỉ IP của client

C Trường “src” chứa giá trị 0.0.0.0

D Trường “src” chứa địa chỉ IP của DHCP server


88
Giao thức DHCP chắc chắn cung cấp thông số nào cho
máy trạm client:

A IP Address

B Subnet Mask

C DNS Server

D Default Gateway
89
NAT - Network Address Translation
Tại sao lại cần sử dụng NAT:
 Giới hạn của số lượng địa chỉ IPv4
 Cập nhật bảng định tuyến khi thay đổi địa chỉ IP của
host.
 Tăng cường bảo mật
NAT - Network Address Translation
Phần còn lại của Mạng cục bộ
Internet (như là mạng gia đình)
10.0.0/24 10.0.0.1

10.0.0.4
10.0.0.2
138.76.29.7

10.0.0.3

Tất cả datagram đi ra khỏi Các datagram với nguồn hoặc đích


mạng cục bộ có cùng một trong mạng này có địa chỉ 10.0.0/24
địa chỉ IP NAT là: cho nguồn, đích
138.76.29.7, (như thông thường)
với các số hiệu cổng nguồn
khác nhau
NAT - Network Address Translation
Phần còn lại của Mạng cục bộ
Internet (như là mạng gia đình)
10.0.0/24 10.0.0.1

10.0.0.4
138.76.29.7 10.0.0.2

10.0.0.3

 Các datagram đi ra: thay thế (địa chỉ IP nguồn, số hiệu cổng
nguồn) mọi datagram đi ra bên ngoài bằng (địa chỉ IP NAT, số hiệu
port mới)
 . . . Các client/server ở xa sẽ dùng địa chỉ đó ( địa chỉ IP NAT, số
hiệu port mối) như là địa chỉ đích
NAT - Network Address Translation
Phần còn lại của Mạng cục bộ
Internet (như là mạng gia đình)
10.0.0/24 10.0.0.1

10.0.0.4
138.76.29.7 10.0.0.2

10.0.0.3

 Ghi nhớ (trong bảng chuyển đổi NAT) mọi cặp chuyển đổi (địa chỉ
IP nguồn, số hiệu port) sang (địa chỉ IP NAT, số hiệu port mới)
NAT - Network Address Translation
Phần còn lại của Mạng cục bộ
Internet (như là mạng gia đình)
10.0.0/24 10.0.0.1

10.0.0.4
138.76.29.7 10.0.0.2

10.0.0.3

 Datagram đi đến: thay thế(địa chỉ IP NAT, số hiệu port mới) trong
các trường đích của mọi datagram đến với giá trị tương ứng (địa
chỉ IP và số hiệu cổng nguồn) trong bảng NAT
NAT - Network Address Translation
Bảng chuyển đổi NAT 1: host 10.0.0.1
2: NAT router WAN side addr LAN side addr
thay đổi địa chỉ nguồn gửi datagram tới
từ 10.0.0.1, 3345 đến 138.76.29.7, 5001 10.0.0.1, 3345 128.119.40.186, 80
138.76.29.7, 5001, …… ……
cập nhật bảng
S: 10.0.0.1, 3345
D: 128.119.40.186, 80
10.0.0.1
1
S: 138.76.29.7, 5001
2 D: 128.119.40.186, 80 10.0.0.4
10.0.0.2
138.76.29.7 S: 128.119.40.186, 80
D: 10.0.0.1, 3345
4
S: 128.119.40.186, 80
D: 138.76.29.7, 5001 3 10.0.0.3
4: NAT router
3: phản hồi đến địa chỉ đích: thay đổi địa chỉ đích từ
138.76.29.7, 5001 138.76.29.7, 5001 tới 10.0.0.1, 3345
ICMP: internet control message protocol
 Được sử dụng bởi các host và  Thông điệp ICMP:
router để truyền thông thông  Loại (Type)
tin, kiểm tra lỗi ở tầng  Mã (Code)
Network
 8 byte đầu tiên của IP
 ICMP được đóng gói trong 1 datagram gây ra lỗi
IP packet
ICMP: internet control message protocol
Loại mã Mô tả Loại mã Mô tả
0 0 echo reply (ping) 8 0 echo request (ping)
3 0 dest. network unreachable
3 1 dest host unreachable 0 0 echo reply (ping)
3 2 dest protocol unreachable
3 3 dest port unreachable
3 6 dest network unknown
3 0 dest. network unreachable
3 7 dest host unknown 3 1 dest host unreachable
4 0 source quench (congestion 3 2 dest protocol unreachable
control - not used)
8 0 echo request (ping) 3 3 dest port unreachable
9 0 route advertisement 3 6 dest network unknown
10 0 router discovery
11 0 TTL expired
3 7 dest host unknown
12 0 bad IP header
11 0 TTL expired
Traceroute và ICMP
 Nguồn gửi một chuỗi các  Khi thông điệp ICMP đến,
segment UDP đến đích nguồn ghi lại RTTs
 Cái đầu tiên có TTL =1
 Cái thứ 2 có TTL=2, tương tự.
 Tiêu chuẩn dừng:
 Khi datagram thứ n đến router  Segment UDP lần lượt
thứ n: đến tới host đích
 router hủy datagram  Đích trả về thông điệp
 Và gửi đến nguồn một thông điệp ICMP “port không có
ICMP (loại 11, mã 0)
thực”(loại 3, mã 3)
 Thông điệp ICMP bao gồm tên và
địa chỉ IP của router
 Nguồn dừng

3 probes 3 probes

3 probes
Cho mô hình chuyển đổi địa chỉ NAT như hình dưới đây.
Hãy xác định địa chỉ IP nguồn và địa chỉ IP đích của gói
tin tại bước 3

S: 128.119.40.186, 80
A
D: 10.0.0.1, 3345

S: 128.119.40.186, 80
B
D: 138.76.29.7, 5001

S: 10.0.0.1, 3345
C
D: 128.119.40.186, 80
99
Thông điệp ICMP được đặt trong gói dữ liệu ?

A UDP

B TCP

C IP

D ICMP
100
Chia mạng con
• Để có thể chia nhỏ một mạng lớn thành nhiều mạng
con bằng nhau, người ta thực hiện mượn thêm một
số bit bên phần host để làm phần network, các bit
mượn này được gọi là các bit subnet
Chia mạng con
 Chia theo số subnet:
Gọi n là số bit cần mượn
2n >= số subnet cần chia
 Chia theo số host:
Gọi m là số bit còn lại của phần host sau khi mượn
2m – 2 >= số host của mỗi subnet
Chia mạng con
Bài tập thuận:
Cho 1 địa chỉ IP, cho biết số host hoặc số mạng con cần có. Yêu cầu tìm ra địa chỉ các subnet,
địa chỉ đầu (first address), địa chỉ cuối (last address), địa chỉ quảng bá (broadcast address),
host range (dải địa chỉ khả dụng của từng host).
1.Nếu đề không cho subnet mask, prefix length. Tìm Subnet mask mặc định
2.Xác định số bit cần mượn
kiểm tra số IP hợp lệ có thể cấp cho từng mạng con.
3. Xác định địa chỉ cho từng mạng con
4. Xác định dãy địa chỉ IP cho host và địa chỉ broadcast
địa chỉ IP hợp lệ đầu tiên/ cuối cùng, địa chỉ broadcast.
Chia mạng con
Cho địa chỉ mạng 192.168.1.0. Chia mạng trên thành các
mạng con, mỗi mạng chứa được 60 hosts.
Với mỗi mạng con, xác định các thông tin: Subnet ID,
Subnet Mask, Start IP  Address, End IP Address, Broadcast
IP. Mỗi mạng con có thể cấp phát tối đa bao nhiêu địa chỉ
IP hợp lệ cho hosts.
Chia mạng con
Cho địa chỉ mạng 172.16.40.0 / 255.255.252.0
Chia mạng trên thành 7 mạng con.
Với mỗi mạng con, xác định các thông tin: Subnet ID,
Subnet Mask, Start IP  Address, End IP Address, Broadcast
IP. Mỗi mạng con có thể cấp phát tối đa bao nhiêu địa chỉ
IP hợp lệ cho hosts.
Chia mạng con
Bài tập ngược:
Cho 1 địa chỉ IP của host thuộc 1 subnet nào đó với subnet mask . Xác định số bit đã mượn,
xác định xem địa chỉ đó thuộc subnet nào, địa chỉ IP đã sử dụng để subneting (chia mạng) là
địa chỉ nào.
1. Tìm Subnet mask (prefix length) mặc định bằng cách xác định lớp.
2. Xác định số bit đã mượn
Chia mạng con
Cho địa chỉ 210.4.80.100/26, xác định xem địa chỉ trên
thuộc subnet nào . Liệt kê các subnet.
Thuật toán routing Link-State
 Sử dụng thuật toán Dijkstra Ký hiệu:
 Giao thức sử dụng Link-state: OSPF • c(x,y): chi phí kết nối từ
node x đến y; = ∞ nếu
 Biết chi phí kết nối, cấu trúc mạng của tất không kết nối trực tiếp đến
cả các node neighbor
 Tính toán đường đi có chi phí thấp nhất từ • D(v): giá trị chi phí hiện tại
1 node (‘nguồn’) đến tất cả các node khác của đường đi từ nguồn tới
đích v
 Cho trước bảng forwarding của node đó
• p(v): node trước nằm trên
 Lặp lại: sau k lần lặp lại, biết được đường đường đi từ nguồn tới v
đi có chi phí thấp nhất của k đích • N': tập các node mà chi phí
đường đi thấp nhất đã
được xác định
Thuật toán Dijsktra
1 Khởi tạo:
2 N' = {u}
3 for all nodes v
4 if v adjacent to u
5 then D(v) = c(u,v)
6 else D(v) = ∞
7
8 Lặp
9 find w not in N' such that D(w) is a minimum
10 add w to N'
11 update D(v) for all v adjacent to w and not in N' :
12 D(v) = min( D(v), D(w) + c(w,v) )
13 /* chi phí mới đến v là chính nó hoặc chi phí đường đi ngắn nhất
14 cộng với chi phí từ w đến v*/
15 until all nodes in N'
Thuật toán Dijkstra : ví dụ 1
x
D(v) D(w) D(x) D(y) D(z) 9
Bước N' p(v) p(w) p(x) p(y) p(z)
0 u 7,u 3,u 5,u ∞ ∞ 5 7
uw 4
1 6,w 5,u 11,w ∞
2 uwx 6,w 11,w 14,x 8
3 uwxv 10,v 14,x 3 w z
u y
4 uwxvy 12,y 2
5 uwxvyz 3
7 4
v
Thuật toán Dijkstra: ví dụ 2

Bước N' D(v),p(v) D(w),p(w) D(x),p(x) D(y),p(y) D(z),p(z)


0 u 2,u 5,u 1,u ∞ ∞
1 ux 2,u 4,x 2,x ∞
2 uxy 2,u 3,y 4,y
3 uxyv 3,y 4,y
4 uxyvw 4,y
5 uxyvwz

5
3
v w 5
2
u 2 1 z
3
1 2
x 1
y
Thuật toán Dijkstra: ví dụ 2
Kết quả cây đường đi ngắn nhất từ u:

v w
u z
x y

Kết quả bảng forwarding trong u:


Đích đến link
v (u,v)
x (u,x)
y (u,x)
w (u,x)
z (u,x)
Cho mô hình đồ thị biểu diễn sự kết nối và chi phí kết nối giữa
các router như hình minh họa bên dưới . Dùng thuật toán
Dijkstra để xác định đường đi ngắn nhất từ đỉnh u đến các đỉnh
còn lại. Kết quả bảng forwarding trong u?

Đích đến Link


6
v (u, v)
v 1 w x (u, x)
5 4
u 4 8 z y (u, x)
1
8
x y 1 z (u, x)
4
w (u, w)
113
Cho mô hình đồ thị biểu diễn sự kết nối và chi phí kết nối giữa
các router như hình minh họa bên dưới . Dùng thuật toán
Dijkstra để xác định đường đi ngắn nhất từ đỉnh u đến các đỉnh
còn lại. Sau bước 0 (khởi tạo) thì D(v), D(w), D(x), D(y), D(z) có
giá trị lần lượt là?

A 5, 6, 1, ∞, ∞
6
v 1 w B 5, 6, ∞, ∞, 1
5 4
u 4 z
8 8
1
1 C 5, 6, ∞, 1, ∞
x y
4

D 5, ∞, ∞, 6, 1
114
Thuật toán routing Distance vector

 Sử dụng thuật toán Bellman-Ford


 Giao thức sử dụng Distance vector: RIP

 Gọi dx(y) := chi phí của đường đi có chi phí ít nhất từ x tới y
thì
dx(y) = min {c(x,v) + dv(y) }
với mọi v là node liền kề với x
 c(a,b): chi phí kết nối từ node a đến b; = ∞ nếu không kết
nối trực tiếp.
Bellman-Ford ví dụ
5
3 Rõ ràng, dv(z) = 5, dx(z) = 3, dw(z) = 3
v w 5
2
u 2 1 z Sử dụng công thức Bellman-Ford:
3
1
x y 2 du(z) = min { c(u,v) + dv(z),
1
c(u,x) + dx(z),
c(u,w) + dw(z) }
= min {2 + 5,
1 + 3,
5 + 3} = 4
Node đạt được tối thiểu là hop kế tiếp trong đường đi
ngắn nhất, được sử dụng trong bảng forwarding
Thuật toán routing Distance vector
Lặp, không đồng bộ: mỗi Mỗi node:
lần lặp cục bộ xảy ra khi:
• Chi phí kết nối cục bộ thay Chờ cho (thay đổi trong chi phí
đổi link cục bộ hoặc thông điệp từ
• Thông điệp cập nhật DV từ neighbor)
neighbor
Phân bố: Tính toán lại các ước lượng
• Mỗi node thông báo đến các
neighbor chỉ khi DV của nó
thay đổi Nếu DV đến đích bất kỳ vừa thay
• Các neighbor sau đó thông đổi, thì thông báo neighbors
báo đến các neighbor của nó
nếu cần thiết
Dx(z) = min{c(x,y) +
Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)}
= min{2+0 , 7+1} = 2 Dy(z), c(x,z) + Dz(z)}
= min{2+1 , 7+0} = 3
Bảng Chi phí đến Chi phí đến
node x x y z x y z
x 0 2 7 x 0 2 3
y ∞∞ ∞ y 2 0 1

Từ
Từ
z ∞∞ ∞ z 7 1 0

Bảng Chi phí đến


node y x y z y
2 1
x ∞ ∞ ∞
x z
y 2 0 1 7
Từ

z ∞∞ ∞

Bảng Chi phí đến


node z x y z
x ∞∞ ∞
y ∞∞ ∞
Từ

z 7 1 0
Thời gian
Dx(z) = min{c(x,y) +
Dx(y) = min{c(x,y) + Dy(y), c(x,z) + Dz(y)}
= min{2+0 , 7+1} = 2 Dy(z), c(x,z) + Dz(z)}
= min{2+1 , 7+0} = 3
Bảng chi phí đến chi phí đến chi phí đến
node x x y z x y z x y z
x 0 2 7 x 0 2 3 x 0 2 3
y ∞∞ ∞ y 2 0 1

từ
từ y 2 0 1

từ
z ∞∞ ∞ z 7 1 0 z 3 1 0
Bảng chi phí đến chi phí đến chi phí đến
node y x y z x y z x y z y
2 1
x ∞ ∞ ∞ x 0 2 7 x 0 2 3 x z
y 2 0 1 y 2 0 1 y 2 0 1 7
từ

từ

từ
z ∞∞ ∞ z 7 1 0 z 3 1 0

Bảng chi phí đến chi phí đến chi phí đến
node z x y z x y z x y z
x ∞∞ ∞ x 0 2 7 x 0 2 3
y 2 0 1 y 2 0 1
từ

y ∞∞ ∞

từ
từ

z 7 1 0 z 3 1 0 z 3 1 0
Thời gian
Các giao thức nào sau đây hoạt động tại tầng Network?

A ICMP, RIP, OSPF

B IP, ICMP, TCP, ADP

C RIP, ATM, UDP

D IP, BGP, LLC, SMTP


120
CHƯƠNG 5
TẦNG LINK
• 5.1. Các phương thức phát hiện lỗi và sửa lỗi
• 5.2. Các giao thức đa truy cập: ALOHA, CSMA, CSMA/CD
• 5.3. Địa chỉ MAC, Ethernet, Switch, Vlan
• 5.4. Tổng kết – Hoạt động truy cập web thường ngày
Tầng Liên kết dữ liệu: Giới thiệu
Thuật ngữ:
• host và router: node
• Các kênh truyền thông kết nối các global ISP
node lân cận nhau (adjacent nodes)
dọc theo đường truyền thông: links
• Kết nối có dây (wired links)
• Kết nối không dây (wireless links)
• LANs
• Gói dữ liệu ở lớp 2: frame, đóng gói
datagram

Tầng data-link có nhiệm vụ truyền


datagram từ 1 node đến node
lân cận vật lý (physically adjacent node )
trên một đường kết nối
Tầng Liên kết dữ liệu: Ngữ cảnh
• datagram được truyền bởi các So sánh:
giao thức khác nhau thuộc tầng • Hành trình từ Princeton đến Lausanne
Liên kết dữ liệu trên các đoạn
• limo: Princeton đến JFK
kết nối khác nhau:
• Máy bay: JFK đến Geneva
• Ví dụ: Ethernet trên đoạn kết
• Xe lửa: Geneva đến Lausanne
nối thứ 1, frame relay trên
các đoạn kết nối trung gian, • Khách du lịch = datagram
802.11 trên đường kết nối
cuối cùng
• đoạn đường đi = liên kết truyền
thông (communication link)
• Mỗi giao thức tầng Liên kết dữ
liệu cung cấp các dịch vụ khác • Kiểu vận chuyển = giao thức
nhau tầng Liên kết dữ liệu
• Ví dụ: có thể hoặc không thể • Đại lý du lịch = thuật toán định
cung cấp rdt trên đường kết tuyến
nối
Các dịch vụ tầng Liên kết dữ liệu
• Điều khiển luồng (flow control):
• Điều khiển tốc độ truyền giữa các node gửi và nhận liền kề nhau

• Phát hiện lỗi (error detection):


• Lỗi gây ra bởi suy giảm tín hiệu, nhiễu.
• Bên nhận phát hiện sự xuất hiện lỗi:
• Thông báo bên gửi truyền lại hoặc bỏ frame đó

• Sửa lỗi (error correction):


• Bên nhận xác định và sửa các bit lỗi mà không cần phải truyền lại

• half-duplex và full-duplex
• Các node tại các đầu cuối của mỗi kết nối đều có thể truyền và nhận,
nhưng với half duplex thì thao tác này không được thực hiện đồng thời
Internet Checksum
 Tính tổng các chuỗi 16-bit sau đó lấy bù 1 (đảo các bit)

10011001 01001110
11100100 01100101
101111101 10110011
1
01111101 10110100
10000010 01001011
Parity Bit
bit parity một chiều: bit parity hai chiều:
 phát hiện lỗi 1 bit  phát hiện và sửa lỗi 1 bit đơn
row parity
0111000110101011 1
d1,1 ... d1,j d1,j+1
d data bits d2,1 ... d2,j d2,j+1
parity ... ... ... ...
bit di,1 ... di,j di,j+1
column
parity ...
Sử dụng parity chẵn di+1,1 di+1,j di+1,j+1
Thêm vào Bit parity 1
hoặc 0 sao cho số lượng
no errors: 1 0 1 0 1 1 detected 10101 1
bit 1 trong dòng đó là and parity
11110 0 10110 0 error
chẵn correctable
01110 1 single-bit 01110 1
00101 0 error: 00101 0
parity
error
Cho dữ liệu như sau, hãy xác định parity
bit cho các hàng và cột

01110000 01100010| 0
11001000 01001011| 1
10000010 10111110| 0
00011010 00001110| 0
01000010 00011110| 0
-------- -------- -
|
01100010 10000111 1 128
Cho dữ liệu và parity bit như sau. Giả sử
có 1 bit lỗi. Hãy xác định bit lỗi

00101101 11001101| 1 A Hàng 5, Cột 13


10001110 11110001| 0
00010111 10011001| 0 B Hàng 3, cột 4

11110111 00111101| 0 C Hàng 6, cột 13


10011101 01001000|1
-------- --------
10011110 11010000| 0 D Hàng 2, cột 2
129
Cyclic Redundancy Check (CRC)
 Hiệu quả hơn Checksum và Parity bit
 D: Chuỗi dữ liệu cần bảo vệ, dưới dạng nhị phân
 G: Đa thức sinh (hàm sinh, bộ khởi tạo), có độ dài r + 1 bits
r CRC bits
d data bits
D R

Mục tiêu: chọn r bits CRC (R) sao cho cụm <D,R> chia hết cho G trong modulo của 2.
• Ban đầu bên gửi và nhận thống nhất với nhau đa thức sinh G
• Bên nhận tiến hành lấy <D,R> chia cho G trong modulo của 2. Nếu phần dư khác 0 thì đã có lỗi
xảy ra.
• Phát hiện được lỗi nếu số bit lỗi < r.
• Được sử dụng nhiều hiện nay (CRC-32, tức r=32 bits)
Cyclic Redundancy Check (CRC): example
We want: G 1 0 1 0 1 1
D.2r XOR R = nG 1 0 0 1 1 0 1 1 1 00 0 0
or equivalently: 1 0 0 1
D.2r = nG XOR R 1 0 1 D * 2r
0 0 0
or equivalently: 1 0 1 0
1 0 0 1
if we divide D.2r by G, want 1 1 0
remainder R to satisfy: 0 0 0
D.2r 1 1 0 0
R = remainder [ ] 1 0 0 1
G 1 0 1 0
1 0 0 1
0 1 1
R
Cyclic Redundancy Check (CRC): example
 G = 10101
 D = 1001 1100
 R hay CRC = ?

 G 5 bits => r = 4 bits.


 <D,R> = 1001 1100 0000
 CRC = 1101
Website luyện tập
 “kurose interactive”
 Các bài tập để các bạn
luyện tập
 https://
gaia.cs.umass.edu/
kurose_ross/interactive/
Các giao thức và kết nối đa truy cập
2 kiểu “kết nối”:
• Điểm-điểm (point-to-point)
• PPP cho truy cập dial-up
• Kết nối point-to-point giữa Ethernet switch và host
• broadcast (chia sẻ đường truyền dùng chung)
• Ethernet mô hình cũ
• upstream HFC
• 802.11 wireless LAN

shared wire (e.g., shared RF shared RF Trong buổi tiệc coctail


cabled Ethernet) (e.g., 802.11 WiFi) (satellite) (không khí và âm thanh
được chia sẻ)
Tầng Link
Các giao thức đa truy cập
• Chia sẻ chung kênh quảng bá (broadcast) đơn
• 2 hoặc nhiều phiên truyền đồng thời bởi các node: nhiễu - giao
thoa gây biến đổi mức tín hiệu
• collision (đụng độ) xảy ra nếu node nhận được 2 hoặc nhiều
tín hiệu tại cùng thời điểm

Giao thức đa truy cập


• Dùng thuật toán phân phân tán (distributed algorithm) xác định
cách các node chia sẻ kênh truyền, ví dụ: xác định khi nào node
có thể truyền
• Các thông báo về việc chia sẻ kênh truyền phải sử dụng chính
kênh đó!
• Không dùng thêm kênh khác để phối hợp

Tầng Link 5-135


Các giao thức MAC: phân loại
3 loại chính:
• Phân hoạch kênh (channel partitioning)
• Chia kênh truyền thành “các mảnh” nhỏ hơn (các slot thời
gian - TDM, tần số - FDM, mã - CDM)
• Cấp phát mảnh này cho node để sử dụng độc quyền
• Truy cập ngẫu nhiên (random access)
• Kênh truyền không được chia, cho phép đụng độ
• “giải quyết” đụng độ
• “Xoay vòng”
• Các node thay phiên nhau, nhưng nút có nhiều dữ liệu hơn
được giữ thời gian truyền lâu hơn

Tầng Link 5-136


Các giao thức MAC phân hoạch kênh: TDMA
TDMA: time division multiple access

6-slot 6-slot
frame frame
1 3 4 1 3 4
Các giao thức MAC phân hoạch kênh: FDMA
FDMA: frequency division multiple access

time

frequency bands
FDM cable
Các giao thức truy cập ngẫu nhiên
• Khi 1 node có packet cần gởi
• Truyền dữ liệu với trọn tốc độ của kênh dữ liệu R.
• Không có sự ưu tiên giữa các node
• 2 hoặc nhiều node truyền  “đụng độ”,
• Giao thức truy cập ngẫu nhiên MAC xác định:
• Cách để phát hiện đụng độ
• Cách để giải quyết đụng độ (ví dụ: truyền lại sau đó)
• Ví dụ các giao thức MAC truy cập ngẫu nhiên:
• slotted ALOHA
• ALOHA
• CSMA, CSMA/CD, CSMA/CA
Slotted ALOHA
Giả thuyết: Hoạt động:
• Tất cả các frame có cùng kích • Khi node có được frame
thước
mới, nó sẽ truyền trong slot
• Thời gian được chia thành các kế tiếp
slot có kích thước bằng nhau • Nếu không có đụng độ:
(thời gian để truyền đủ 1 frame)
node có thể gửi frame
• Các node bắt đầu truyền chỉ mới trong slot kế tiếp
ngay tại lúc bắt đầu slot
• Nếu có đụng độ: node
• Các node được đồng bộ hóa truyền lại frame trong mỗi
• Nếu 2 hoặc nhiều node truyền slot tiếp theo với xác suất
trong cùng 1 slot, thì tất cả các p cho đến khi thành công
node đều phát hiện đụng độ

Tầng Link 5-140


Slotted ALOHA
node 1 1 1 1 1

node 2 2 2 2

node 3 3 3 3

C E C S E C E S S

Ưu điểm: Nhược điểm:


• Node hoạt động có thể • Đụng độ, lãng phí slot
truyền liên tục với tốc độ • Các slot trống
tối đa của kênh
• Các node có thể phát
• Phân tán cao: chỉ có các hiện tranh chấp nhanh
slot trong các node cần hơn thời gian để truyền
được đồng bộ gói
• Đơn giản • Đồng bộ hóa
Tầng Link 5-141
Slotted ALOHA: hiệu suất

• hiệu suất cực đại = 1/e = 0.37 = 37%

!
Tốt nhất: kênh
hữu dụng trong
khoảng 37% thời
gian!
Pure (unslotted) ALOHA
• unslotted Aloha: đơn giản, không đồng bộ
• Khi frame đến
• truyền lập tức
• Khả năng đụng độ tăng:
• frame được truyền tại thời điểm t0 đụng độ với các
frame khác được truyền trong thời điểm [t0-1,t0+1]

Tầng Link 5-143


Pure ALOHA: hiệu suất
Hiệu suất tốt nhất: 18%
CSMA (carrier sense multiple access)

CSMA: lắng nghe trước khi truyền:


• Nếu kênh nhàn rỗi: truyền toàn bộ frame
• Nếu kênh truyền bận, trì hoãn truyền

• So sánh với con người: đừng ngắt lời người khác!


CSMA: đụng độ (collision)
spatial layout of nodes

• Đụng độ có thể vẫn


xảy ra: trễ lan truyền
nghĩa là 2 node không
thể nghe thấy quá trình
truyền lẫn nhau
• Đụng độ: toàn bộ thời
gian truyền packet bị
lãng phí
• Khoảng cách và trễ lan
truyền có vai trò trong
việc xác định xác suất
đụng độ
CSMA: đụng độ (collision)

• Đụng độ có thể vẫn


xảy ra: trễ lan truyền
nghĩa là 2 node không
thể nghe thấy quá trình
truyền lẫn nhau
• Đụng độ: toàn bộ thời
gian truyền packet bị
lãng phí
• Khoảng cách và trễ lan
truyền có vai trò trong
việc xác định xác suất
đụng độ

Tầng Link 5-147


CSMA/CD (collision detection)
CSMA/CD: trì hoãn như trong CSMA
• Đụng độ được phát hiện trong thời gian ngắn
• Thông tin đang truyền bị hủy bỏ, giảm sự lãng phí kênh.
• Phát hiện đụng độ:
• Dễ dàng trong các mạng LAN hữu tuyến: đo cường độ
tín hiệu, so sánh với các tín hiệu đã được truyền và
nhận
• Khó thực hiện trong mạng LAN vô tuyến: cường độ
truyền cục bộ lấn át cường độ tín hiệu nhận
• Tương tự như hành vi của con người: đàm thoại
lịch sự

Tầng Link 5-148


CSMA/CD (collision detection)
Bố trí của các node

Tầng Link 5-149


Thuật toán Ethernet CSMA/CD
1. NIC nhận datagram từ tầng 4. Nếu NIC phát hiện có phiên truyền khác
network, tạo frame trong khi đang truyền, thì nó sẽ hủy bỏ
việc truyền và phát tín hiệu tắc nghẽn
2. Nếu NIC dò được kênh rỗi,
5. Sau khi hủy bỏ truyền, NIC thực hiện
nó sẽ bắt đầu việc truyền
binary (exponential) backoff:
frame. Nếu NIC dò được
• Sau lần đụng độ thứ m, NIC chọn ngẫu
kênh bận, đợi cho đến khi
nhiên số K trong khoảng {0,1,2, …, 2m-
kênh rảnh, sau đó mới truyền. 1}. NIC sẽ đợi K·512 thời gian truyền
3. Nếu NIC truyền toàn bộ bit (bit time), sau đó trở lại bước 2
frame mà không phát hiện • Càng nhiều đụng độ thì sẽ có khoảng
thời gian chờ dài hơn
việc truyền khác, NIC được
truyền toàn bộ frame đó!
CSMA/CD efficiency
 Tprop = độ trễ lan truyền lớn nhất giữa 2 node trong mạng LAN
 ttrans = thời gian để truyền frame có kích thước lớn nhất

 efficiency goes to 1
• as tprop goes to 0
• as ttrans goes to infinity
 Hiệu suất tốt hơn ALOHA: đơn giản, chi phí thấp và điều khiển
phân tán!
Các giao thức MAC “Xoay vòng”
Các giao thức phân hoạch kênh MAC (channel
partitioning MAC protocols):
• Chia sẻ kênh hiệu quả và công bằng với tải lớn
• Không hiệu quả ở tải thấp: trễ khi truy cập kênh, 1 node chỉ được
cấp phát 1/N bandwidth ngay cả khi chỉ có 1 node hoạt động!

Các giao thức MAC truy cập nhẫu nhiên (random


access MAC protocols)
• Hiệu quả tại tải thấp: node đơn có thể dùng hết khả năng của kênh
• Tải cao: đụng độ cao

Các giao thức “Xoay vòng” (“taking turns” protocols)


Tìm kiếm giải pháp dung hòa tốt nhất!
Các giao thức MAC “Xoay vòng”
polling:
• Node chủ (master node)
“mời” các node con
data
(slave node) truyền lần poll
lượt
• Thường được sử dụng master
với các thiết bị con data
“không thông minh”
• Quan tâm:
• Chi phí cho việc điều
phối (polling slaves
overhead)
• Độ trễ (latency)
• Có 1 điểm chịu lỗi
(master)
Tầng Link 5-153
Các giao thức MAC “Xoay vòng”
Chuyển token:
T
 Điều hành việc chuyển
token tuần tự từ 1 node
đến node kế tiếp.
 Gói token
(không có
 Quan tâm: gì để gởi)
 Chi phí cho việc T
chuyển token (token
overhead)
 Độ trễ (latency)
 Có 1 điểm chịu lỗi
(token)

data
Tầng Link 5-154
Tổng kết các giao thức MAC
• Phân hoạch kênh, theo thời gian, tần số hoặc mã
• Phân chia theo thời gian (Time Division), phân chia theo tần số (Frequency
Division)
• Truy cập ngẫu nhiên (động),
• ALOHA, S-ALOHA, CSMA, CSMA/CD
• Cảm nhận sóng mang (carrier sensing): dễ dàng trong một số
kỹ thuật (có dây), khó thực hiện trong các công nghệ khác
(không dây)
• CSMA/CD được dùng trong Ethernet
• CSMA/CA được dùng trong 802.11
• Xoay vòng
• Điều phối từ đơn vị trung tâm, truyền token
• bluetooth, FDDI, token ring
Tầng Link 5-155
BT xác định miền quảng bá và miền đụng
độ (broadcast domain và collision domain)
 Mỗi cổng (port) của router liên kết với 1 subnet và là 1 broadcast
domain
 Mỗi cổng (port) switch và router là 1 vùng đụng độ
 Hub là thiết bị hoạt động ở tầng 1, gia tăng kích thước của broadcast
và collision domain, và không làm chia nhỏ số lượng broadcast và
collision domain
Broadcast domain Broadcast domain
Collision domain
Media Access Control (MAC): kiểm soát truy
cập truyền thông
Chức năng: được sử dụng “cục bộ” để chuyển frame từ 1 interface này đến 1
interface được kết nối vật lý trực tiếp với nhau (cùng mạng, trong ngữ cảnh vùng
địa chỉ IP)

Địa chỉ MAC 48 bits, viết dưới dạng thập lục phân.
Chia thành 6 nhóm, mỗii nhóm(octet) 8 bits
Được quản lý bởi IEEE, nhà sản xuất mua địa chỉ (là số hữu hạn), được ghi vào
trong NIC ROM; có thiết lập, sửa đổi bằng phần mềm.
VD: 3A-48-CC-9B-5C-5A mỗi số hoặc chữ cái hệ (16) đại diện cho 4 bit.

Interface: cổng giao tiếp


Frame: dữ liệu tầng data-link
NIC ROM (Network interface card read only memory): card mạng được lưu sẵn
So sánh địa chỉ MAC và IP

MAC IP

- 48 bits - 32 bits
- Tầng liên kết - Tầng mạng
- Chứng minh nhân dân - Địa chỉ nhà
- Không phân cấp - Phân cấp, phụ thuộc vào subnet IP được gắn
- Có thể di động, từ LAN này sang LAN khác. - Không di chuyển được
ARP (address resolution protocol)
Làm gì khi nhận được Packets từ tầng Network? IP
Eth
Xác định Interface cần tới của gói tin? Phy

Đóng gói Packets -> Frame


Xác định địa chỉ MAC khi biết địa chỉ IP
ARP (address resolution protocol): giao thức phân
giải địa chỉ (IP -> MAC)
Mỗi node (host, router) trên mạng LAN có bảng
ARP riêng của nó.
IP MAC TTL
192.168.32.53 3A-4F-1C-9B-5C-5A 17s
192.168.32.100 7C-3A-4F-1C-9B-5C 20s
… … …

TTL là thời gian lưu trữ của các địa chỉ IP/MAC ánh xạ trong mạng -> Hết thời gian tự động xoá và cập nhật lại
ARP (address resolution protocol)

Cách hoạt động của giao thức ARP


Gửi gói tin A -> B

*TH1: Địa chỉ MAC B nằm trong bảng ARP của A -> gửi gói tin đi

*TH2: Địa chỉ MAC B không nằm trong bảng ARP của A
- A gửi quảng bá (broadcast) gói tin ”ARP query” có chứa địa chỉ IP gói B.
- Địa chỉ MAC đích là FF-FF-FF-FF-FF-FF -> tất cả các node trong mạng
LAN sẽ nhận được gói tin.
- B nhận được gói ARP và phản hồi lại A địa chỉ MAC của B (unicast).
- Những host khác sẽ bỏ gói tin này.
Þ TH1
ARP (address resolution protocol)

- A sẽ lưu lại cặp địa chỉ IP-MAC trong bảng ARP của nó cho tới khi thông tin
này cho đến khi được làm mới ( quá Time to live)
 
- ARP là giao thức “plug-and-play”

- PnP: Plug-and-play: cắm và chạy: chỉ cần kết nối là hoạt động, không cần
cài đặt phức tạp.

- Các nodes tạo bảng ARP của nó không cần sự can thiệp của người dùng (tự
động gửi ARP query không cần hỏi ý kiến)
Quá trình thay đổi địa chỉ IP và địa chỉ MAC khi gói tin đi
từ A -> B?

165
Quá trình thay đổi địa chỉ IP và địa chỉ MAC khi gói tin đi
từ A -> B?

A -> R R -> B
Source IP: 111.111.111.111 Source IP: 111.111.111.111
Destination IP: 222.222.222.222 Destination IP: 222.222.222.222
Source MAC: 74-29-9C-E8-FF-55 Source MAC: 1A-23-F9-CD-06-9B
Destination MAC: E6-E9-00-17-BB-4B Destination MAC: 88-B2-2F-54-1A-0F
166
Ethernet
Là họ các công nghệ mạng máy tính được dùng trong các mạng LAN, WAN
Những giao thức cho phép kết nối:
- Token Ring: giao thức 802.5, 4 Mbps -> 16 Mbps
- FDDI: giao thức 802.4, 100 Mbps
- Ethernet: giao thức 802.3, 10 Mbps -> 10 Gbps
- Ethernet đơn giản hơn, rẻ hơn => Được sử dụng rộng rãi hơn
Các kiến trúc liên kết mạng
Bus: phổ biến trong giữa thập niên 90 bus
Tất cả các node trong cùng vùng xung đột (collision domain) (có
thể đụng độ lẫn nhau)
Star: chiếm ưu thế ngày nay, switch hoạt động ở trung tâm
Mỗi chặng kết nối Ethernet hoạt động riêng biệt (các node
không đụng độ lẫn nhau) switch star
Cấu trúc Frame Ethernet
type

dest. source data (payload)


preamble address address CRC

Preamble (8 byte):
7 byte đầu, mỗi byte có giá trị 10101010, byte cuối có giá trị 10101011
Được sử dụng để đồng bộ tốc độ đồng hồ của bên gửi và nhận

CRC: kiểm tra lỗi tại bên nhận


- Lỗi được phát hiện: frame bị bỏ.
Cấu trúc Frame Ethernet
type

dest. source data (payload)


preamble address address CRC

Addresses: 6 byte địa chỉ MAC nguồn, đích


- Nếu adapter nhận frame với địa chỉ đích đúng là của nó, hoặc với địa chỉ
broadcast (như là ARP packet), thì nó sẽ chuyển dữ liệu trong frame tới giao
thức tầng Mạng
- Ngược lại, adapter sẽ hủy frame

Type: chỉ ra giao thức tầng cao hơn.


Đơn vị dữ liệu giao thức trong mô hình OSI được gọi là:

A Bit

B Packet

C PDU

D Frame
170
Địa chỉ MAC (Mac address) là:

A Địa chỉ lớp 3 được Router xử lý định tuyến

B Được phân phát bởi giao thức DHCP

C Có thể thay đổi bằng Properties của Windows

D Địa chỉ lớp 2 được gắn cứng vào Card mạng


171
Địa chỉ nào là địa chỉ broadcast của lớp 2?

A 8.8.8.8

B FF-FF-FF-FF-FF-FF

C 255.255.255.255

D 0.0.0.0
172
Giao thức tìm địa chỉ IP khi biết địa chỉ MAC?

A TCP/IP

B DHCP

C ARP

D RARP
173
Phương thức nào mà trong đó cả hai bên đều có thể
đồng thời gửi dữ liệu đi?

A Simple

B Half-duplex

C Full-duplex

D Phương thức khác


174
Topo mạng cục bộ nào mà tất cả các trạm phân chia
chung một đường truyền chính?

A Bus

B Ring

C Ethernet

D FDDI
175
Giao thức mạng cục bộ nào được sử dụng rộng rãi hiện
nay?

A Bus

B Ring

C Ethernet

D FDDI
176
Switch
A
- Thiết bị tầng Liên kết dữ liệu: đóng vai trò tích cực
C’ B

- Lưu (store) và chuyển tiếp (forward ) các frame Ethernet 6 1 2

5 4 3
- Transparent (trong suốt), Plug-and-play
B’ C

- Tự học
A’
switch với 6 interface
(1,2,3,4,5,6)
Lưu (store) và chuyển tiếp (forward ) các frame Ethernet
A
Khi switch nhiều phiên truyền đồng thời C’ B

- Switch lưu tạm (buffer) các packet 6 1 2

5 4 3
- A-tới-A’ và B-tới-B’ có thể truyền đồng thời mà
B’ C
không có đụng độ xảy ra

A’
switch với 6 interface
(1,2,3,4,5,6)
Transparent (trong suốt), Plug-and-play
A
- Các host không phát hiện được sự hiện diện của các switch
C’ B
- Các switch không cần được cấu hình
6 1 2

- Giao thức Ethernet được sử dụng trên mỗi đường kết nối 5 4 3
vào, nhưng không có đụng độ B’ C

- Mỗi đường kết nối là 1 miền đụng độ (collision domain)


A’
của riêng nó
switch với 6 interface
(1,2,3,4,5,6)
Self-learning (tự học) A

Cách switch biết tới A’ thì sẽ thông qua interface 4? C’ B

Switch học về vị trí các host có thể truyền tới 6 1 2


được thông qua các interface kết nối với các 5 4 3
host đó
B’ C

Khi switch nhận được frame, switch “học” vị trí


của bên gửi: cổng vào A’
switch với 6 interface
(1,2,3,4,5,6)
Ghi lại cặp thông tin (bên gửi-vị trí) vào trong
bảng switch MAC addr interface TTL
A 1 60
Khi switch khởi động lại thì bảng switch A’ 4 60
forwarding sẽ được làm mới hoàn toàn.
Self-learning (tự học)

Khi switch nhận được frame:

1. Ghi lại cổng kết nối vào, địa chỉ MAC của host gửi
2. Tạo chỉ mục bảng switch bằng địa chỉ MAC đích
3. Nếu tìm thấy thông tin đích đến
thì {
nếu đích đến nằm trên phân đoạn mạng gửi frame đến
thì bỏ frame
ngược lại chuyển tiếp frame trên interface được chỉ định bởi thông
tin trong bảng switch
}
ngược lại flood (chuyển tiếp trên tất cả interface ngoại trừ interface
nhận frame đó)
Bảng forwarding của các switch sau khi
vận chuyển frame từ A -> H, B -> G?

S4
S1
S3
A S2
F
B C D I

G H
E
A -> H 1
S4
3
S1 2
4
1 4 S3
A 1
S2
2 1 4
3 2
2 3 F
B C D 3 I

G H
E

S1 S2
Port MAC Port MAC

1 MAC A 4 MAC A

4 MAC H

S3 S4
Port MAC Port MAC ADDRESS
1 MAC A 1 MAC A
3 MAC H 3 MAC H
S4
1

B -> F
3
S1 2
4
1 4 S3
A 1
S2
2 1 4
3 2
2 3 F
B C D 3 I

G H
E

S1 S2
Port MAC Port MAC
1 MAC A 4 MAC A
4 MAC H 4 MAC B
2 MAC B 3 MAC F
4 MAC F

S4
S3 Port MAC ADDRESS
Port MAC 1 MAC A
1 MAC A 3 MAC H
3 MAC H 1 MAC B
1 MAC B 2 MAC F
So sánh Switch và Router application
A
transport
datagram network
frame link
Giống nhau:
physical link frame
Đều có thể lưu (store) và chuyển tiếp (forwarding) physical
Đều có bảng định tuyến
switch
Khác nhau:
network datagram
Switch Router link frame
physical
Thiết bị của tầng mạng Thiết bị của tầng liên kết
24 – 48 ports 4 – 6 port application
Tự học bảng fowarding bằng Sử dụng các thuật toán định transport
cơ chế flooding tuyến network
Địa chỉ MAC Địa chỉ IP
link
physical
B
Trên host C, kết nối từ C đến A sẽ sử dụng IP ngầm định (default
gateway) là?

A 128.119.43.135

B 128.119.144.132

C 128.119.144.156

D Tất cả đều sai


186
Phát biểu sai về gói tin được gửi từ A đến B tại vị trí (3)?

A IP source là 128.119.43.124

B IP đích là 128.119.169.152

C MAC nguồn là 5D-94-C6-9A-53-5E

D MAC đích là E2-C4-79-DC-64-50


187
Khi PC 3 ping thành công đến PC0, PC1, PC2, địa chỉ MAC nào sẽ
tương ứng với interface Fa0/1 trong bảng forwarding của S1?

A Địa chỉ MAC của S0

B Địa chỉ MAC của PC3

C Địa chỉ MAC của PC0, PC1

D Địa chỉ MAC của PC0, PC1, PC2


188
Theo sơ đồ, nếu sau khi khởi động lại tất cả các thiết bị, gửi gói
tin từ máy E tới máy F thì có chuyện gì xảy ra?

A S1 biết E nối vào cổng nào của S2

B S4 biết E và F cùng nối vào 1 cổng trên S4


S4
S2 chỉ truyền gói tin từ F cho E mà
C không broadcast S1 S2
S3

A F I
D
H
D Tất cả đều sai B C E G
189
Khi PC1 gửi một frame cho PC3 thì switch sẽ làm gì với gói tin
đó?

A Switch bỏ frame đó

Switch chuyển tiếp frame đó ra


B port 2

Switch chuyển tiếp frame đó ra


C tất cả các port

Switch chuyển tiếp frame đó ra


D tất cả các port trừ port 4 190
VLAN (Virtual Local Area Network)

Công ty có 3 bộ phận là: Engineering, Marketing, Accounting, mỗi bộ phận trên


lại trải ra trên 3 tầng.

Mỗi tầng 3 switch x 3 tầng = 9 switch

=> Tốn kém, không tận dụng được hết port của switch
VLAN (Virtual Local Area Network)
Port-based VLAN
- Mỗi cổng được gắn với một VLAN xác định. Do đó mỗi host kết
nối với một cổng của switch đều thuộc một VLAN nào đó router
- Traffic isolation (cô lập traffic): các frame đến từ VLAN A chỉ
có thể tới được các thiết bị trong VLAN A
- Thay đổi linh động (dynamic membership): các port có thể
được gán động giữa các VLAN 1

2
7

8
9

10
15

16

- Chuyển tiếp giữa các VLAN: được thực hiện thông qua định
tuyến … …

- Trunk port: kết nối giữa các VLAN được định nghĩa trên
nhiều switch vật lý 7 9 15
1 1 3 5 7
2 8 10 16 2 4 6 8

… …
Hoạt động thường ngày - truy cập web

browser DNS server


Comcast network
68.80.0.0/13

Mạng trường học


68.80.2.0/24

web page

web server Mạng của Google


64.233.169.105 64.233.160.0/19
Thường nhật … kết nối tới Internet
DHCP DHCP
• Máy tính kết nối cần có địa chỉ
DHCP UDP IP của riêng nó, địa chỉ của
DHCP IP cổng ra mặc định, địa chỉ của
DHCP Eth DNS server: dùng DHCP
Phy
DHCP
 Yêu cầu DHCP được đóng
gói trong UDP, được đóng
DHCP DHCP gói trong IP, được đóng gói
DHCP UDP trong 802.3 Ethernet
DHCP IP
DHCP Eth router  Ethernet frame broadcast
Phy (chạy DHCP)
(dest: FFFFFFFFFFFF) trên
LAN, được router có chạy
dịch vụ DHCP nhận
 Ethernet mở gói, chuyển tiếp
gói IP lên, IP mở gói, chuyển
tiếp gói UDP lên, UDP mở
gói, chuyển tiếp gói yêu cầu
DHCP lên DHCP
Tầng Link
DHCP DHCP • DHCP server tạo DHCP
DHCP UDP ACK chứa địa chỉ IP của
DHCP IP client, địa chỉ IP của cổng
DHCP Eth ra mặc định cho client đó,
Phy địa chỉ IP của DNS server

 Frame được đóng gói tại


DHCP DHCP DHCP server, và được
DHCP UDP chuyển tiếp (switch tự học)
DHCP IP thông qua mạng LAN, rồi
DHCP Eth router tách ra tại client
Phy (chạy DHCP)
DHCP  DHCP client nhận gói trả
lời DHCP ACK

Bây giờ, Client có địa chỉ, biết địa chỉ


của DNS server, địa chỉ IP của router cổng ra mặc định
Thường nhật … ARP (trước DNS, trước HTTP)
• Trước khi gửi HTTP request, cần
DNS DNS địa chỉ IP của www.google.com:
DNS UDP
DNS IP DNS
ARP
ARP query Eth  DNS query được tạo, đóng gói
Phy trong UDP, được đóng gói trong
IP, được đóng gói trong Eth. Gửi
frame tới router, cần địa chỉ MAC
ARP reply
ARP
Eth
của interface của router interface:
Phy ARP
 ARP query broadcast, được
router
(chạy DHCP) nhận bởi router, router này sẽ
trả lời lại với ARP reply cung
cấp địa chỉ MAC của interface
của router này
 Hiện tại, client biết địa chỉ MAC
của router cổng ra mặc định, vì
vậy nó có thể gửi frame chứa
DNS query
Thường nhật … dùng DNS DNS
DNS UDP DNS server
DNS IP
DNS DNS DNS Eth
DNS UDP DNS Phy
DNS IP
DNS Eth
Phy
DNS
Comcast network
68.80.0.0/13

 IP datagram được chuyển tiếp từ


router mạng campus tới mạng
(chạy DHCP) Comcast, được định tuyến (các
 IP datagram chứa DNS bảng được tạo bởi các giao thức
query được chuyển tiếp định tuyến RIP, OSPF, IS-IS
thông qua switch của và/hoặc BGP) tới DNS server
mạng LAN từ client tới  Được tách/ghép tới DNS server
router cổng ra mặc định  DNS server trả lời cho client với
địa chỉ IP address của
www.google.com
Thường nhật … kết nối TCP mang HTTP
HTTP
HTTP
SYNACK
SYN TCP
SYNACK
SYN IP
SYNACK
SYN Eth
Phy

 Gửi HTTP request, đầu


tiên client mở TCP socket
tới web server
router  TCP SYN segment (bước 1
(chạy DHCP)
SYNACK
SYN TCP trong 3-bước bắt tay) được
SYNACK
SYN IP định tuyến liên miền tới web
SYNACK
SYN Eth server
Phy  web server đáp ứng với TCP
SYNACK (bước 2 trong 3-
web server bước bắt tay)
64.233.169.105  Kết nối TCP được thiết lập!
Thường nhật …
HTTP yêu cầu/trả lời (request/reply)
HTTP
HTTP HTTP  Trang web cuối cùng cũng
HTTP
HTTP TCP được thể hiện ra(!!!)
HTTP
HTTP IP
HTTP
HTTP Eth
Phy

 HTTP request được gửi


vào trong TCP socket
 IP datagram chứa HTTP
router request được định tuyến tới
HTTP (chạy DHCP)
HTTP
www.google.com bằng địa
HTTP TCP
HTTP IP chỉ có được khi hỏi DNS
HTTP Eth  Web server trả lời với HTTP
Phy reply (chứa trang web)

web server  IP datagram chứa HTTP


64.233.169.105 reply được định tuyến trở về
client

You might also like