1
Chương 8:
Tầng liên kết dữ liệu
D
ự
án HEDSPI
Khoa CNTT-
ð
HBK Hà N
ộ
i
Gi
ả
ng viên: Ngô H
ồ
ng S
ơ
n
B
ộ
môn Truy
ề
n thông và M
ạ
ng máy tính
2
Tổng quan
Tuần trước: Tầng ứng dụng
Mô hình: client-server vs. P2P
Case study: HTTP, Mail, FTP…
Tuần này: Tầng liên kết dữ liệu
Dịch vụ:
ðóng gói, ñịa chỉ hóa
Phát hiện và sửa lỗi
Kiểm soát luồng
Kiểm soát truy nhập ñường
truyền
Công nghệ mạng LAN
Ethernet
Wireless LAN
Công nghệ mạng WAN
Frame relay
ATM
….
3
Giới thiệu về
Tầng liên kết dữ liệu
4
Nút mạng và liên kết
Nút mạng:
PCs, Laptop, Routers,
Server…
Liên kết:
Kênh truyền thông giữa
các nút kế tiếp
Hữu tuyến: Ethernet LAN,
ADSL, fiber optic…
Không dây: Wi-fi, Wi-Max,
vệ tinh,…
Tầng liên kết dữ liệu:
Truyền dữ liệu giữa các
thành phần kế tiếp
“link”
5
Tầng liên kết dữ liệu và kiến trúc
phân tầng
LLC
(Logical Link Control)
MAC
(Media Access Control)
Application
Transport
Network
Data-link
Physical
802.2 LLC
802.3
Ethernet
802.4
Token Bus
802.5
Token Ring
802.11
Wi-Fi
802.16
Wi-Max
…
IEEE 802.x series
Media independent
sub-layer
Media dependent
sub-layer
6
Tổng quan về các chức năng
Framing
Addressing
Flow control
Error control
Media Access Control
Datalink layer
7
Các chức năng (1)
ðóng gói - Framing:
Bên gửi: ñặt gói tin tầng mạng vào khung tin,
thêm phần ñầu, phần ñuôi
Bên nhận: Bỏ phần ñầu, phần ñuôi và lấy gói tin
truyền lên tầng mạng
ðịa chỉ hóa - Addressing:
ðịa chỉ vật lý ñặt trong phần ñầu gói tin ñể ñịnh
danh nút nguồn, nút ñích
8
Các chức năng (2)
ðiều khiển truy nhập ñường truyền
Nếu là mạng ña truy nhập, cần có các giao thức
truy nhập ñường truyền cho nhiều máy trạm
Kiểm soát luồng:
Kiểm soát tốc ñộ truyền của bên gửi sao cho bên
nhận hoạt ñộng tốt, không bị quá tải
Kiểm soát lỗi:
Phát hiện và sửa các lỗi bít
e.g. parity check, checksum, CRC check
9
Kiểm soát lỗi
Phát hiện lỗi
Phát hiện và sửa lỗi
10
Nguyên lý phát hiện lỗi
EDC= Error Detection Code (redundancy)
Mã phát hiện lỗi
Data
Data EDC
Data
Data’
EDC’
All bit in
Data’ OK?
Y
N
Error
Link with bit errors
11
Mã chẵn lẻ
Mã ñơn
Phát hiện lỗi bít ñơn
Mã hai chiều
Phát hiện và sửa lỗi bít ñơn
Khái niệm về checksum của
Internet?
101011
111100
011101
001010
101011
101100
011101
001010
12
CRC: Cyclic Redundancy Check
Mã vòng
Dữ liệu ñược xem như một số nhị phân: D
Chọn một chuỗi r+1 bit, G (chuỗi sinh – Generator)
Tìm một chuỗi R ñộ dài r bit, sao cho chuỗi ghép của D và R
là một số nhị phân chia hết cho G (chia modulo 2)
<D, R> chia hết cho G
D
D R
D
D’
R’
<D’, R’> mod G = 0 ?
Y
N
Link with bit errors
<D, R> mod G = 0
13
CRC: Cách tìm R
<D, R> có thể viết dưới dạng
D.2
r
XOR
R
<D, R> chia hết cho G
D.2
r
XOR
R = n.G
Hay: D.2
r
= n.G
XOR
R
Có nghĩa là R là số dư khi chia D.2
r
cho G (phép chia modulo 2)
R= D.2
r
mod G
Ví d
ụ
10101001000 1001
1001 1011110
1110
1001
1110
1001
1111
1001
1100
1001
1010
1001
110
R=110, chuỗi bít gửi ñi là
101010011110
D
G
R
D R
14
CRC biểu diễn dưới dạng ña thức
1011 : x
3
+x +1
Ví d
ụ
m
ộ
t s
ố
mã CRC
ñượ
c s
ử
d
ụ
ng trong th
ự
c t
ế
:
CRC-8 = x
8
+ x
2
+ x + 1
CRC-12 = x
12
+x
11
+x
3
+x
2
+x
CRC-16-CCITT = x
16
+ x
12
+ x
5
+ 1
CRC-32 = x
32
+ x
26
+ x
23
+ x
22
+ x
16
+ x
12
+ x
11
+ x
10
+ x
8
+ x
7
+ x
5
+ x
4
+ x
2
+ x + 1
G càng dài, mã CRC phát hi
ệ
n l
ỗ
i càng hi
ệ
u qu
ả
CRC
ñượ
c s
ử
d
ụ
ng r
ộ
ng rãi trong th
ự
c t
ế
Wi-fi, ATM, Ethernet…
Phát hiện chuỗi bít bị lỗi có ñộ dài nhỏ hơn r+1 bit
Phép toán XOR ñược cài ñặt bởi phần cứng
15
Kiểm soát truy nhập
ñường truyền
16
Các dạng liên kết
ðiểm-nối-ñiểm
ASDL
Telephone modem
Leased Line….
Quảng bá
Mạng LAN truyền thống với hình trạng bus hay mạng hình
sao dùng hub (công nghệ lỗi thời)
Wireless LAN
HFC:
…
Các mạng quảng bá cần giao thức ñiều khiển truy
nhập ñể tránh xung ñột -> Giao thức ña truy nhập
17
Phân loại các giao thức ña truy
nhập
Chia kênh:
Chia tài nguyên của ñường truyền thành nhiều phần nhỏ
(Thời gian - TDMA, Tần số - FDMA, Mã - CDMA)
Chia từng phần nhỏ ñó cho các nút mạng
Truy nhập ngẫu nhiên:
Kênh không ñược chia, cho phép ñồng thời truy nhập, chấp
nhận là có xung ñột
Cần có cơ chế ñể phát hiện và tránh xung ñột
e.g. Pure Aloha, Slotted Aloha, CSMA/CD, CSMA/CA…
Lần lượt:
Theo hình thức quay vòng
Token Ring, Token Bus….
18
Các phương pháp chia kênh
FDMA: frequency division multiple access
TDMA: time division multiple access
CDMA: code division multiple access
19
TDMA và FDMA
FDMA
frequency
time
TDMA:
frequency
time
4 máy
Ví d
ụ
:
20
CSMA/CD
Carrier Sense Multiple Access with Collision
Detection (ða truy nhập, có phát hiện xung ñột)
Thế nào là CSMA/CD: trong một cuộc họp
Multiple Access:
Collision:
CSMA: “Listen before talk”
CD
“Listen while talking”
21
CSMA/CD
CSMA: Các máy nghe trước muốn truyền:
Nếu kênh rỗi, truyền toàn bộ dữ liệu
Nếu kênh bận, chờ
Tại sao lại có xung ñột?
ðộ
tr
ễ
lan truy
ề
n
22
Xung ñột trong CSMA
Giả sử kênh truyền có 4
nút
Tín hiệu ñiện từ lan truyền
từ nút này ñến nút kia mất
một thời gian nhất ñịnh
(trễ lan truyền)
Ví dụ:
23
CSMA/CD: Tóm tắt
Máy trạm nghe trước khi muốn truyền
Bận: Chờ, tiếp tục nghe
Rỗi: Bắt ñầu truyền, vừa truyền vừa “nghe ngóng” xem có
xung ñột hay không
Nghe trong thời gian bao lâu?
Nếu phát hiện thấy xung ñột: Hủy bỏ quá trình truyền và
quay lại trạng thái chờ, nghe
Một số biến thể của CSMA
CSMA kiên nhẫn
CSMA không kiên nhẫn
CSMA với xác suất p nào ñó
24
So sánh chia kênh và truy
nhập ngẫu nhiên
Chia kênh
Hiệu quả, công bằng cho ñường truyền với lưu lượng lớn
Lãng phí nếu chúng ta cấp kênh con cho một nút chỉ cần
lưu lượng nhỏ
Truy nhập ngẫu nhiên
Khi tải nhỏ: Hiệu quả vì mỗi nút có thể sử dụng toàn bộ
kênh truyền
Tải lớn: Xung ñột tăng lên
Phương pháp quay vòng: Có thể dung hòa ưu ñiểm
của hai phương pháp trên
25
Token Ring – Mạng vòng dùng thẻ bài
Một “thẻ bài” luân
chuyển lần lượt qua
từng nút mạng
Nút nào giữ thẻ bài
sẽ ñược gửi dữ liệu
Gửi xong phải
chuyển thẻ bài ñi
Một số vấn ñề
Tốn thời gian chuyền
thẻ
Trễ
Mất thẻ bài….
T
data
(nothing
to send)
T