Chương 8:
Tầng liên kết dữ liệu
Giảng viên: Ngô Hồng Sơn
Khoa CNTT- ðHBK Hà Nội
Bộ môn Truyền thông và Mạng máy tính
1
SinhVienZone.com
/>
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 (Local
Area Network)
Ethernet
Wireless LAN
Công nghệ mạng WAN (Wide
Area Network)
Frame relay
ATM
….
SinhVienZone.com
/>
2
Giới thiệu về
Tầng liên kết dữ liệu
3
SinhVienZone.com
/>
Nút mạng và liên kết
“link”
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
4
SinhVienZone.com
/>
Tầng liên kết dữ liệu và kiến trúc
phân tầng
Application
Media independent
sub-layer
Transport
LLC
Network
(Logical Link Control)
Data-link
MAC
Physical
(Media Access Control)
Media dependent
sub-layer
802.2 LLC
802.3
802.4
802.5
802.11
Ethernet
Token Bus
Token Ring
Wi-Fi
…..
802.16
Wi-Max
IEEE 802.x series
SinhVienZone.com
/>
5
Tổng quan về các chức năng
Flow control
Framing
Media Access Control
Error control
Addressing
Datalink layer
6
SinhVienZone.com
/>
Các chức năng (1)
ðóng gói - Framing:
ðơn vị dữ liệu: Frame (khung tin)
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
7
SinhVienZone.com
/>
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
8
SinhVienZone.com
/>
Kiểm soát lỗi
Phát hiện lỗi
Phát hiện và sửa lỗi
9
SinhVienZone.com
/>
Nguyên lý phát hiện lỗi
EDC= Error Detection Code (redundancy)
Mã phát hiện lỗi
Data
Data
Y
All bit in
Data’ OK?
Error
N
Data
EDC
Data’
EDC’
Link with bit errors
10
SinhVienZone.com
/>
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
101011
111100
011101
001010
101011
101100
011101
001010
Khái niệm về checksum của
Internet?
11
SinhVienZone.com
/>
Internet checksum (nhắc lại)
Mã kiểm tra lỗi ñộ dài 16 bit
Tại bên gửi
ðặt 16 bit của checksum = 0
Tổng theo các số 16 bits
ðảo bit tất cả
Tại bên nhận
Tổng tất cả theo các số 16 bit
Phải thu ñược toàn các bit 1
Nếu không, gói tin bị lỗi
12
SinhVienZone.com
/>
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
Y
N
<D’, R’> mod G = 0 ?
<D, R> mod G = 0
D
R
D’
R’
13
Link with bit errors
SinhVienZone.com
/>
CRC: Cách tìm R
<D, R> có thể viết dưới dạng
D.2r XOR
Ví dụ
G
R
10101001000
<D, R> chia hết cho G
1001 D
D.2r XOR R = n.G
1110
D.2r = n.G XOR R
1001
Có nghĩa là R là số dư khi chia D.2r 1110
1001
cho G (phép chia modulo 2)
1111
1001
r
R= D.2 mod G
1100
1001
1010
R=110, chuỗi bít gửi ñi là
1001
10101001110
110
D
1001
1011110
R
14
R
SinhVienZone.com
/>
CRC biểu diễn dưới dạng ña thức
1011 : x3 +x +1
Ví dụ một số mã CRC ñược sử dụng trong thực tế:
CRC-8 = x8 + x2 + x + 1
CRC-12 = x12+x11+x3+x2+x
CRC-16-CCITT = x16 + x12 + x5 + 1
CRC-32 = x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5
+ x4 + x2 + 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ép toán XOR ñược cài ñặt bởi phần cứng
Phát hiện chuỗi bít bị lỗi có ñộ dài nhỏ hơn r+1 bit
15
SinhVienZone.com
/>
Kiểm soát truy nhập
ñường truyền
16
SinhVienZone.com
/>
Các dạng liên kết
ðiểm-nối-ñiểm
ADSL
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, radio network, mobile network
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
SinhVienZone.com
/>
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 (collision)
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
SinhVienZone.com
/>
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
SinhVienZone.com
/>
TDMA và FDMA
Ví dụ:
4 kênh
FDMA
frequency
time
TDMA:
frequency
time
SinhVienZone.com
20
/>
TDMA: Ví dụ
Mạng LAN có 6 máy, 1,3,4 hoạt ñộng. 2, 5, 6
nghỉ
6-slot
frame
1
3
4
1
3
4
21
SinhVienZone.com
/>
FDM cable
frequency bands
FDMA: Ví dụ
time
22
SinhVienZone.com
/>
Các phương pháp
truy cập ngẫu nhiên
23
SinhVienZone.com
/>
Aloha
Packet-Switched Radio Network
Các nút truyền trên một tần số (f0)
Nút trung tâm nhận và truyền lại một
tần số khác (f1)
Central Node
f0
f1
Nếu có hai nút cùng truyền: Xung ñột
Nếu có xung ñột, nút vừa truyền sẽ
nhận ñược một gói tin bị lỗi, nó sẽ ñợi
một thời gian ngẫu nhiên trước khi
truyền lại
Host 1
Host 2
Host 3
24
SinhVienZone.com
/>
Slotted ALOHA
Thời gian ñược chia làm các khe (slot) bằng nhau
Dữ liệu có cùng kích thước (1 slot)
Các nút phải ñồng bộ hóa thời gian
25
SinhVienZone.com
/>