Bài giảng Mạng máy tính nâng cao - Chapter 5: Link Layer and LANs - Lê Ngọc Sơn
Link Layer: Introduction
Vài thuật ngữ:
hosts, routers gọi chung là nút [nodes]
Kênh truyền thông kết nối các nút kề
nhau theo đường truyền được gọi là
liên-kết [links]
• Liên-kết hữu tuyến [wired links]
• Liên-kết vô tuyến [wireless links]
• LANs
Gói tin tầng 2 gọi là khung [frame],
chứa datagram
Tầng data-link chịu trách nhiệm
chuyển giao datagram từ một nút
đến một nút kế dọc theo liên-kết

Trang 1

Trang 2

Trang 3

Trang 4

Trang 5

Trang 6

Trang 7

Trang 8

Trang 9

Trang 10
Tải về để xem bản đầy đủ
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Mạng máy tính nâng cao - Chapter 5: Link Layer and LANs - Lê Ngọc Sơn", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Mạng máy tính nâng cao - Chapter 5: Link Layer and LANs - Lê Ngọc Sơn
ả các liên kết
khác với cùng tốc độ.
• Tất cả các nút kết nối với hub có thể va chạm với một
nút khác.
• Không có vùng đệm cho frame
• Không có CSMA/CD tại hub: các NICs phải tự phát
hiện va chạm.
twisted pair
hub
5: DataLink Layer 5-59
Switch
Là thiết bị ở tầng link: hubs thông minh, đóng
vai trò chủ động trong:
• Lưu và chuyển tiếp các Ethernet frames
• Kiểm tra địa chỉ MAC của frame đến, chuyển tiếp
một cách có lựa chọn frame đến một hoặc nhiều
liên-kết ở ngõ ra, sử dụng CSMA/CD để truy cập
đường truyền.
Tính trong suốt của swicth
• Host gửi dữ liệu cho nhau, không cần biết đến sự
hiện diện của switch.
plug-and-play, self-learning
• Gắn vào là chạy, switches không cần được cấu hình
5: DataLink Layer 5-60
Switch: allows multiple simultaneous
transmissions
Mỗi host có đường kết nối dành
riêng, trực tiếp đến switch.
Switch có bộ đệm các gói tin
Ethernet được sử dụng trên
từng liên-kết vào, nhưng không
có va chạm; cho phép dữ liệu
truyền theo 2 chiều đồng thời
[full-duplex]
• Mỗi liên-kết là collision domain
của chính nó.
switching: A-tới-A’ và B-tới-B’
một cách đồng thời, không có
va chạm.
• Điều này là không thể đ/v Hub
A
A’
B
B’
C
C’
switch với 6 interfaces
(1,2,3,4,5,6)
1 2
3
45
6
5: DataLink Layer 5-61
Switch Table
Q: làm thế nào switch biết rằng A’
là có thể “chạm đến được” thông
qua interface 4, và B’ là có thể
“chạm đến được” nhờ interface 5?
A: mỗi switch có một bảng chuyển
[switch table], mỗi dòng của bảng
chứa:
• (địa chỉ MAC của host, interface để
đến được host, nhãn thời gian)
Trông giống như bảng định tuyến!
Q: các dòng của bảng chuyển
được tạo ra và duy trì như thế
nào?
• Có vài điều tương tự như giao thức
định tuyến.
A
A’
B
B’
C
C’
switch với 6 interfaces
(1,2,3,4,5,6)
1 2
3
45
6
5: DataLink Layer 5-62
Switch: self-learning
switch tự học để biết những
hosts nào là có thể đến được
qua interface nào của nó.
• Khi nhận được frame, switch “học”
vị trí của host gửi: từ nhánh mạng
đến switch.
• Switch ghi nhận lại cặp thông tin
về host gửi (MAC addr) và nhánh
mạng chứa host gửi (interface)
A
A’
B
B’
C
C’
1 2
3
45
6
A A’
Source: A
Dest: A’
MAC addr interface TTL
Switch table
(initially empty)
A 1 60
5: DataLink Layer 5-63
Switch: frame filtering/forwarding
Khi nhận được frame:
1. Ghi nhận lại liên-kết (đại diện bằng interface) mà host gửi
(đại diện bằng MAC addr) sử dụng.
2. Cập nhật bảng chuyển, chỉ mục theo “MAC dest address”
3. If có dòng trên bảng chuyển ứng với đích đến của frame
then {
if đích đến nằm cùng segment với frame đến
then hủy bỏ frame /* filter */
else chuyển frame đến interface được chỉ ra
/*forward*/
}
else broadcast frame đến tất cả các interface, ngoại trừ
interface mà frame đi vào /*flooding*/
5: DataLink Layer 5-64
Self-learning,
forwarding:
example
A
A’
B
B’
C
C’
1 2
3
45
6
A A’
Source: A
Dest: A’
MAC addr interface TTL
Switch table
(initially empty)
A 1 60
A A’
Khi không biết frame
destination: flood
Khi xác định được:
gửi có chọn lọc
A’ A
A’ 4 60
5: DataLink Layer 5-65
Interconnecting switches
Các switch có thể nối kết lại với nhau:
A
B
Q: gửi từ A đến G – làm thế nào để S1 biết phải chuyển
frame đến G thông qua S4 và S3?
A: tự học! (làm việc giống như trường hợp có 1 switch)
S1
C D
E
F
S2
S4
S3
H
I
G
5: DataLink Layer 5-66
Self-learning multi-switch example
Giả sử C gửi frame đến I, I phản hồi lại C.
Q: hãy chỉ ra bảng chuyển và cách chuyển frame tại
các switch S1, S2, S3, S4 ?
A
B
S1
C D
E
F
S2
S4
S3
H
I
G
1
2
5: DataLink Layer 5-67
Institutional network
to external
network
router
IP subnet
mail server
web server
5: DataLink Layer 5-68
Switches vs. Routers
Cả hai đều là thiết bị lưu và chuyển [store-and-forward]
• routers: thiết bị tầng Network (xử lý header ở tầng Network)
• Switches: Thiết bị tầng Link
Router duy trì bảng Định tuyến, cài đặt thuật toán định
tuyến.
Switch duy trì bảng Chuyển, cài đặt chức năng lọc
[filtering], thuật toán tự học.
5: DataLink Layer 5-69
VLANs: motivation
Điều gì sẽ xảy ra nếu:
Người dùng mạng CS đến làm
việc tại mạng EE, nhưng vẫn
muốn kết nối đến switch CS?
Nếu chỉ 1 broadcast domain:
• Tất cả các dữ liệu broadcast
ở tầng 2 (ARP, DHCP) được
gửi đến tất cả các LAN (nảy
sinh vấn đề về an ninh/chính
sách riêng tư)
Switch ở mức thấp nhất chỉ
có vài port được dùng=>
kém hiệu quả.
Computer
Science Electrical
Engineering
Computer
Engineering
Mạng như sơ đồ sau có gì BẤT ỔN?
5: DataLink Layer 5-70
VLANs Port-based VLAN: các port của switch được nhóm lại (nhờ phần mềm quản
lý) để một switch vật lý cho phép
Switch hỗ trợ khả năng
VLAN có thể được cấu
hình để định nghĩa nhiều
mạng LAN ảo trên 1 hạ
tầng LAN.
Virtual Local
Area Network
1
8
9
16102
7
Electrical Engineering
(VLAN ports 1-8)
Computer Science
(VLAN ports 9-15)
15
Electrical Engineering
(VLAN ports 1-8)
1
82
7 9
1610
15
Computer Science
(VLAN ports 9-16)
làm việc như có nhiều switch ảo.
5: DataLink Layer 5-71
Port-based VLAN
1
8
9
16102
7
Electrical Engineering
(VLAN ports 1-8)
Computer Science
(VLAN ports 9-15)
15
Tách rời luồng dữ liệu:
frames đến/từ ports 1-8 chỉ
có thể đến ports 1-8
• Cũng có thể định nghĩa VLAN dựa
vào địa chỉ MAC của host thay vì
port của switch.
dynamic membership: các
ports có thể được gán
động cho các VLAN.
router
forwarding between VLANS:
được thực hiện thông qua định
tuyến (như với các switch rời)
Thực tế, các nhà SX bán các thiết bị
switch tích hợp với router.
5: DataLink Layer 5-72
VLANS spanning multiple switches
trunk port: di chuyển frame giữa các VLAN được định
nghĩa trên các switch vật lý.
• Các frame được trong VLAN giữa các switch không thể chỉ có cấ
trúc như 802.1 frame (vì phải có thông tin VLAN ID)
• Giao thức 802.1q thêm/gỡ bỏ các field trong header của frame
cần được chuyển giữa các trunk ports.
1
8
9
102
7
Electrical Engineering
(VLAN ports 1-8)
Computer Science
(VLAN ports 9-15)
15
2
73
Ports 2,3,5 belong to EE VLAN
Ports 4,6,7,8 belong to CS VLAN
5
4 6 816
1
5: DataLink Layer 5-73
Type
2-byte Tag Protocol Identifier
(value: 81-00)
Tag Control Information (12 bit VLAN ID field,
3 bit priority field like IP TOS)
Recomputed
CRC
802.1Q VLAN frame format
802.1 frame
802.1Q frame
5: DataLink Layer 5-74
Link Layer
5.1 Introduction and
services
5.2 Error detection and
correction
5.3Multiple access
protocols
5.4 Link-Layer
Addressing
5.5 Ethernet
5.6 Link-layer switches
5.7 PPP
5.8 Link virtualization:
MPLS
5.9 A day in the life of a
web request
5: DataLink Layer 5-75
Point to Point Data Link Control
Một gửi, một nhận, trên 1 liên-kết: dễ hơn liên-kết
quảng bá
• Không cần điều khiển truy cập đường truyền
• Không cần địa chỉ MAC
• e.g., dialup link, ISDN line
Các giao thức point-to-point phổ biến
• PPP (point-to-point protocol)
• HDLC: High level data link control (Data link used
to be considered “high layer” in protocol stack!)
5: DataLink Layer 5-76
PPP Design Requirements [RFC 1557]
packet framing: đóng gói datagram ở tầng mạng vào frame
ở tầng link.
• Mang dữ liệu của bất kỳ 1 giao thức tầng mạng nào
(không chỉ IP)
• Khả năng chuyển dữ liệu lên tầng trên
bit transparency: phải cho phép mang bất cứ dữ liệu nào
trong trường chứa dữ liệu (e.g. trường info trong PPP data
frame)
error detection (nhưng không sửa lỗi)
connection liveness: phải có khả năng phát hiện lỗi trên
liên-kết và báo lỗi này cho tầng mạng.
network layer address negotiation: một nút phải có cung
cấp 1 cơ chế cho phép truyền thông với tầng mạng (VD IP)
để học/cấu hình địa chỉ mạng của nút khác.
5: DataLink Layer 5-77
PPP non-requirements
PPP có phát hiện nhưng không đòi cơ chế sửa lỗi/khôi
phục nguyên trạng
PPP không cần điều tiết tốc độ truyền/nhận (no flow
control). Việc điều tiết tốc độ được các giao thức tầng
trên đảm nhiệm.
Chấp nhận truyền nhận các frame sai thứ tự, điều này
tương thích với mô hình dịch vụ của IP.
PPP chỉ vận hành trên các liên-kết điểm-điểm (một gửi-
một nhận). Trong khi đó, các giao thức khác ở tầng link
(VD HDLC) có thể vận hành trên các liên-kết quảng-bá
(một-gửi-nhiều- nhận)
Error recovery, flow control, data re-ordering
all relegated to higher layers!
5: DataLink Layer 5-78
PPP Data Frame
Flag: dấu hiệu phân cách (bắt đầu và kết thúc frame)
Address: hiện cố định 11111111, không sử dụng.
Control: hiện cố định 00000011, không sử dụng,
tương lai có thể định nghĩa các giá trị khác.
Protocol: giao thức tầng trên chuyển dữ liệu vào
frame. (2116: IP; 2916: AppleTalk, 2716: DECnet, )
5: DataLink Layer 5-79
PPP Data Frame
info: dữ liệu từ tầng trên cần được vận chuyển
check: CRC dùng để phát hiện lỗi.
5: DataLink Layer 5-80
Byte Stuffing
Yêu cầu “data transparency” : vùng dữ liệu phải cho
phép chứa dữ liệu giống như flag, tức
• Q: Khi nhận được , đó là dữ liệu hay
flag?
Bên gửi: thêm vào 1 byte đặc biệt
trước mỗi byte dữ liệu dạng , hoặc
, sau đó mới gửi đi.
Bên nhận:
• Nếu nhận được , sau đó
, thì vứt bỏ
• Nếu nhận được 2 byte , thì vứt bỏ 1
byte
5: DataLink Layer 5-81
Byte Stuffing
Dữ liệu
giống flag
Gắn thêm byte 01111101
vào phía trước
5: DataLink Layer 5-82
PPP Data Control Protocol
Trước khi trao đổi dữ liệu tầng
mạng, 2 bên gửi/nhận ở tầng
link phải:
Cấu hình liên-kết PPP (chiều dài
tối đa frame, authentication)
Học/thiết lập cấu hình thông tin
tầng mạng
• Với IP: sử dụng thông điệp
giao thức của IPCP (IP
Control Protocol) để cấu hình
/học địa chỉ IP
5: DataLink Layer 5-83
Link Layer
5.1 Introduction and
services
5.2 Error detection and
correction
5.3Multiple access
protocols
5.4 Link-Layer
Addressing
5.5 Ethernet
5.6 Link-layer switches
5.7 PPP
5.8 Link virtualization:
MPLS
5.9 A day in the life of a
web request
5: DataLink Layer 5-84
Synthesis: a day in the life of a web request
Đã khảo sát đủ các tầng trong chồng giao
thức Internet
• application, transport, network, link
Kết hợp các tầng
• Mục tiêu: nhận biết, ôn lại, hiểu các giao thức (ở
tất cả các tầng) qua 1 kịch bản đơn giản: mở 1
trang web
• Kịch bản: sinh viên gắng máy laptop vào mạng
trường, mở trang web www.google.com
5: DataLink Layer 5-85
A day in the life: scenario
Comcast network
68.80.0.0/13
Google’s network
64.233.160.0/19 64.233.169.105
web server
DNS server
school network
68.80.2.0/24
browser
web page
5: DataLink Layer 5-86
A day in the life connecting to the Internet
Máy tính kết nối vào mạng,
cần có đ/chỉ IP của chính nó,
đ/chỉ IP của router đầu chặng,
DNS server: sử dụng DHCP.
router
(runs DHCP)
DHCP
UDP
IP
Eth
Phy
DHCP
DHCP
DHCP
DHCP
DHCP
DHCP
UDP
IP
Eth
Phy
DHCP
DHCP
DHCP
DHCP
DHCP request được đóng gói
trong UDP datagram, được
đóng gói tiếp trong 802.1
Ethernet frame.
Ethernet frame được gửi
broadcast (đích
FFFFFFFFFFFF) trên LAN.
Frame này được router có
DHCP Server nhận.
Tại đây, frame được tách lấy
phần IP datagram, UDP
segment, DHCP request
5: DataLink Layer 5-87
A day in the life connecting to the Internet
DHCP Server hình thành DHCP
ACK, trong đó chứa Đ/chỉ IP
của client, của router đầu
chặng, tên & Đ/chỉ IP của
DNS Server.
router
(runs DHCP)
DHCP
UDP
IP
Eth
Phy
DHCP
DHCP
DHCP
DHCP
DHCP
UDP
IP
Eth
Phy
DHCP
DHCP
DHCP
DHCP
DHCP
DHCP ACK được đóng gói
cho đến frame, frame được
chuyển trên LAN đến client.
Quá trình tách và chuyển
lên các tầng trên các PDU
diễn ra ở client.
Client được cấp địa chỉ IP, biết tên và địa chỉ DNS server
Địa chỉ IP của router đầu chặng
DHCP client nhận được DHCP
ACK reply.
5: DataLink Layer 5-88
A day in the life ARP (before DNS, before HTTP)
Trước khi gửi HTTP request, laptop
cần biết địa chỉ IP của
www.google.com: sử dụng DNS
DNS
UDP
IP
Eth
Phy
DNS
DNS
DNS
Một DNS query được tạo ra, đóng
gói trong IP, đóng gói tiếp trong
Ethernet frame. Để gửi frame đến
được router, cần biết địa chỉ MAC
của router (ở phía máy laptop). Sử
dụng ARP.
ARP query được gửi broadcast
trên LAN và được router nhận.
Router sẽ trả lời bằng ARP reply,
trong đó chứa đựng địa chỉ MAC
của router.
Client biết địa chỉ MAC của router
đầu chặng, do đó nó có thể gửi
frame chứa DNS query.
ARP query
Eth
Phy
ARP
ARP
ARP reply
5: DataLink Layer 5-89
A day in the life using DNS
DNS
UDP
IP
Eth
Phy
DNS
DNS
DNS
DNS
DNS
IP datagram chứa đựng DNS
query được chuyển từ client
qua switch để đến router đầu
chặng.
IP Datagram được chuyển từ
mạng SV đang kết nối, vào mạng
Comcast, được định tuyến tới
DNS Server thông quá các giao
thức định tuyến RIP, OSPF, IS-
IS và/hoặc BGP
IP Datagram được trích/chuyển
đến DNS server
DNS server trả lời địa chỉ IP
của www.google.com cho client
Comcast network
68.80.0.0/13
DNS server
DNS
UDP
IP
Eth
Phy
DNS
DNS
DNS
DNS
5: DataLink Layer 5-90
A day in the life TCP connection carrying HTTP
HTTP
TCP
IP
Eth
Phy
HTTP
Để gửi HTTP request ,
trước tiên client phải mở
TCP socket đến Web
server.
TCP SYN Segment được
chuyển đến Web server
(bước 1 của quá trình bắt
tay 3 bước).
Kết nối TCP connection được
thiết lập!
64.233.169.105
web server
SYN
SYN
SYN
SYN
TCP
IP
Eth
Phy
SYN
SYN
SYNACK
SYNACK
SYNACK
SYNACK
SYNACK
SYNACK
web server phản hồi
bằngTCP SYNACK (bước 2
cua3 quá trình bắt tay 3
bước )
5: DataLink Layer 5-91
A day in the life HTTP request/reply
HTTP
TCP
IP
Eth
Phy
HTTP
HTTP request được gửi
vào TCP Socket.
Một IP datagram chứa HTTP
request được chuyển đến
www.google.com
IP datgram chứa HTTP reply
được hướng ngược về client
64.233.169.105
web server
HTTP
TCP
IP
Eth
Phy
web server phản hồi bằng
HTTP reply
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
web page finally (!!!)
displayed
5: DataLink Layer 5-92
Chapter 5: Summary
Các nguyên tắc bên dưới của các dịch vụ tầng link
• Phát hiện lỗi, sửa lỗi
• Dùng chung kênh truyền quảng bá: đa truy cập
• Đánh địa chỉ tầng liên-kết
Sự thuyết minh và cài đặt nhiều công nghệ khác nhau
ở tầng link
• Ethernet
• LANS dùng Switch, VLANs
• PPP
• Mạng được ảo hóa như tầng link: MPLS
Tổng hợp: Một ví dụ xuyên suốt về truy cập Web
5: DataLink Layer 5-93
Chapter 5: let’s take a breath
Hoàn tất một lượt khảo sát chồng giao thức
Internet (ngoại trừ tầng Vật lý)
Hiểu biết chắc chắn về các nguyên lý mạng,
cũng như thực tế
.. Có thể dừng ở đây. Tuy nhiên, vẫn còn
khá nhiều chủ đề lý thú!
• wireless
• multimedia
• security
• network management
5: DataLink Layer 5-94
HẾT
File đính kèm:
bai_giang_mang_may_tinh_nang_cao_chapter_5_link_layer_and_la.pdf

