Tải bản đầy đủ (.doc) (4 trang)

mô tả hoạt động của mls và cách thức mà một layer 3 switch sử dụng mls

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (116.49 KB, 4 trang )

Bài viết này mô tả hoạt động của MLS và cách thức mà một Layer 3 switch sử dụng MLS
.
MLS được thiết kế ra nhằm hỗ trợ kiến trúc phân phối layer 3 switching . Điều đó có
nghĩa là không nhất thiết các thành phần của MLS phải được tích hợp trong một thiết bị
phần cứng cụ thể . MLS bao gồm 2 thành phần chính sau :
- MLS-RP ( MLS Route Processor ) : Thành phần này chính là Control Plane như ta đã
biết . Nó có tác dụng duy trì Routing table và cập nhật các Update khi mạng có sự thay
đổi về topology .
- MLS-SE ( MLS Switching Engine ) : Thành phần này chính là Data Plane . Nó có tác
dụng định ra next hop , egress interface , rewrite lại các frame mà nó nhận được và
forward frame đến đúng đích .
Trước tiên chúng ta hãy tìm hiểu xem flow là gì ? Flows là khái niệm dùng để mô tả các
thông tin routing lưu trong route cache của MLS-SE . Một flow có thể được định nghĩa
dựa trên destination Ip address , hoặc sự kết hợp của source và destination ip address
hoặc source ip address , destination ip address và source port , destination port
( TCP/UDP port ) . Ví dụ : bất kì địa chỉ source nào gửi đến địa chỉ destination là
192.168.2.1 được coi là một flow . Các packet từ source 192.168.2.1 đến địa chỉ đích
192.168.2.2 cũng được coi là một flow khác .
Hình ảnh dưới đây mô tả kiến trúc của MLS và cách thức hoạt động của nó .
Host X có địa chỉ là :
Ip : 192.168.1.100
Gateway : 192.168.1.1
MAC : 0010.4ae0.1e03
MLS-RP có địa chỉ là :
Ip1 : 192.168.1.1
Ip2 : 192.168.2.1
MAC : 0010.7be2.abe0
Host Y có địa chỉ là :
Ip : 192.168.2.200
Gateway : 192.168.2.1
MAC : 0006.53fe.8420


Giải thích : Ta thấy MLS-RP không nhất thiết phải tích hợp luôn ở trong Switch . Trong
trường hợp này MLS-RP là router xử lí việc định tuyến giữa 2 vlan . Interface Ethernet
của Router được phân ra làm 2 sub interface , mỗi subinterface cung cấp default-gateway
cho mỗi Vlan . Host X nằm trong Vlan 1 có địa chỉ là 192.168.1.100 . Host Y nằm trong
Vlan 2 có địa chỉ là 192.168.2.200 .
Bước 1 : Host X gửi một packet đến cho Host Y . Vì host Y nằm khác Vlan với Host X
nên Host X phải gán địa chỉ destination MAC address là MAC address của default-
gateway .
Bước 2 : Frame gửi đi và được nhận bởi MLS-SE ( switch ) , MLS-SE nhận thấy
destination MAC là của MLS-RP . Bất kì một frame nào có địa chỉ MAC destination là
của một thiết bị routing , khi MLS-SE nhận được frame loại này , nó sẽ mark frame này
lên như là một candidate frame cho Layer 3 switching . MLS-SE sẽ xem xét destination
ip address trong packet và kiểm tra MLS cache đối với flow này . Vì đây là packet đầu
tiên gửi cho Host Y nên sẽ không có một entry nào trong bảng MLS cache . Do đó packet
sẽ được chuyển lên cho MLS-RP xử lí . Lúc này flow về destination Host Y đã được add
vào một phần , đó là địa chỉ destination ip .
Bước 3 : MLS-RP nhận được packet này và thực hiện routing bình thường . Nó sẽ kiểm
tra thông tin về destination ip trong bảng routing table và quyết định gửi ra sub interface
dành cho vlan 2 . Đồng thời nó cũng phải rewrite lại thông tin về destination MAC
address , lúc này là địa chỉ MAC của Host Y . ( Nếu chưa có thì phải gửi ARP request
trước khi rewrite lại frame ) .
Bước 4 : MLS-SE nhận được frame và lưu tiếp thông tin về destination MAC address vào
entry còn thiếu dành cho Host Y .Thông tin chứa trong Entry này sẽ được dùng cho các
lần rewrite và forward tiếp theo mà không cần phải chuyển lên cho MLS-RP xử lí nữa .
Bước 5 : Switch tra thông tin về destination MAC trong bảng CAM và switch packet ra
interface 2/3 cho Host Y .
Bước 6 : Host X lại gửi tiếp một packet khác cho Host Y , lúc này MLS-SE không cần
phải chuyển lên cho MLS-RP nữa ,vì thông tin này là một flow đã có sẵn trong MLS
cache của nó rồi . Nó chỉ thực hiện các công việc rewrite lại destination MAC address , ip
checksum và frame checksum .

Như vậy kiến trúc của MLS dựa trên flow , do đó phân biệt được các loại flow là rất cần
thiết . Flow có 3 loại sau , còn gọi là các flow mask :
- Destination ip address ( destination-only ) : một địa chỉ destination duy nhất có thể tạo
thành được một flow . Tất cả các packet gửi đến cùng một destination ip address đều
thuộc một flow . Đối với ví dụ trên , flow mask là destination-only .
- Source and destination ip address ( source-destination ) : tất cả các packet được gửi bởi
một source và nhận được bởi một destination cụ thể nào đó thì tạo thành một flow . Điều
đó có nghĩa là có thể có nhiều flow cho một destination ip address , mỗi flow được phân
biệt với nhau bởi source address .
- Full flow ( full ) : Một full-flow chỉ ra traffic thuộc về một source ip address,
destination ip address , source TCP/UDP port , destination TCP/UDP port cụ thể . Ví dụ
Telnet session từ địa chỉ 192.168.2.1 đến địa chỉ 192.168.2.2 là một flow khác với flow
tạo ra bỏi một session FTP từ 192.168.2.1 đến 192.168.2.2
Flow rất quan trọng , vì nó được chứa trong MLS cache , và thông tin này được sử dụng
cho việc rewrite based on harware của layer 3 switching . Flow mask ở dạng nào là tùy
thuộc vào yêu cầu của mạng . Tùy vào việc ACLs được triển khai như thế nào mà sử
dụng flow mask cho phù hợp . Ví dụ , nếu ta đang triển khai extended ACLs thì nên xài
kiểu full flow .
Minh họa hoạt động của MLS khi có ACLs .
Bước 1 : Host X đang thiết lập một kết nối HTTP tới Host Y . Nó gửi đi một packet có
các thông số source ip = 192.168.1.100 , destination ip = 192.168.2.200 , protocol
number = 6 ( TCP ) , destination port = 80 , random source TCP port = 1111 . Host Y
không nằm cùng một subnet với Host X nên Host X sẽ phải gửi tới địa chỉ MAC
destination là của MLS-RP . MLS-SE nhận được frame này , sẽ đánh dấu nó là một
candidate frame dành cho layer 3 switching . Khi MLS-RP nhận được packet này nó sẽ
xét trong ACLs , permit packet này và thực hiện route ra interface phù hợp . MLS-SE
nhận được routed packet này sẽ ghi vào cache của mình là một flow mới .
Bước 2 : Host X muốn thiết lập tiếp một FTP connection tới Host Y . Do thông tin về
FTP không match với thông tin của HTTP chứa sẵn trong cache của MLS-SE nên MLS-
SE sẽ gửi lên cho MLS-RP . MLS-RP sẽ kiểm tra thông tin này có match với ACLs hay

không . Lúc này , nó nhận thấy thông tin này bị deny trong ACLs nên sẽ drop packet này
luôn . MLS-SE sẽ không nhận được thông tin về flow này từ MLS-RP nữa , do đó nó sẽ
không ghi thông tin của flow này vào cache .
Bước 3 : Đối với phiên làm việc được thiết lập giữa Host X và Host Y như ở bước 1 thì
sẽ được MLS-SE switch mà không cần phải chuyển lên cho MLS-RP nữa . Nếu có một
session HTTP khác được thiết lập , tức là sẽ có 1 source port random khác được tạo ra và
tương ứng sẽ có thêm 1 flow nữa cho session này được tạo ra trong cache của MLS-SE .
MLS cần có một sự giao tiếp giữa MLS-RP và MLS-SE nhằm đảm bảo cho việc thực
hiện layer 3 switching của MLS-SE là diễn ra chính xác . Các sự kiện sau đây sẽ làm cho
thông tin về flow trong cache không còn chính xác nữa :
- Routing Topology thay đổi
- Cấu hình ACL thay đổi .
Giữa MLS-RP và MLS-SE phải chạy một giao thức gọi là MLSP ( multilayer switching
protocol ) . MLSP multicast hello được gửi đi bởi MLS-RP với thời gian interval là 15s ,
thông báo cho MLS-SE về sự thay đổi của routing topology và ACLs.
Đối với một packet đầu tiên , MLS phải xử lí bằng software . Các packet kế tiếp cùng
flow với packet đầu tiên mới được xử lí bằng hardware . Mỗi khi có một session mới
được thiết lập thì phải add thêm thông tin về flow của session đó vào cache . Nếu
network của chúng ta là dạng large enterprise thì việc sử dụng MLS là không tối ưu .
Thông tin lưu trữ về các flow , và việc quản lí , duy trì các thông tin này trở nên quá tải
đối với MLS . Vì thế người ta chuyển sang sử dụng CEF .

×