Xây dựng một Traffic Balancing Layer 2 trên nền SoftSwitch.
Trang 1Loi cam on
LOI CAM ON
Chúng tôi vô cùng biết ơn sự dìu dắt và hướng dẫn tận tình, chu đáo của thầy Cao Đăng Tân, trưởng bộ môn Mạng Máy Tính và Viễn Thông, trong suốt quá trình thực hiện luận văn này Thầy luôn theo sát từng bước đi của chúng tôi, gợi mở cho chúng tôi cách thức để giải quyết các vẫn đề gặp phải khi tiến hành nghiên cứu đề tài này Thông qua các cuộc thảo luận, thầy không chỉ giúp chúng tôi hiểu rõ bản chất của một vấn đẻ cụ thể cần nghiên cứu mà còn hướng chúng tôi tìm hiểu những trường hợp tông quát, những vấn để liên quan có thể nảy sinh Thêm vào đó, phong cách làm việc của thầy là tâm gương thúc đây chúng tôi hăng say nghiên cứu hơn
Chúng tôi xin bày tỏ lòng biết ơn chân thành đến tất cả các thầy cô, những người đã
dạy dỗ, truyền đạt và trang bị cho -chúng tôi nguồn tri thức khoa học rộng lớn về tự
nhiên và xã hội trong những năm ngôi ở ghê giảng đường đại học
Chúng tôi xin cảm ơn các anh Trương Bảo Long và Nguyễn Xuân Quang, tác giả của phần mềm SoftSwitch đã nhiệt tình giúp đỡ và đóng góp ý kiến cho luận văn
Chúng tôi cũng xin gởi lời cám ơn đến bạn bè của chúng tôi, những người đã nhiệt tình giúp đỡ chúng tôi tìm kiếm các tài liệu cần thiết cho việc nghiên cứu, đóng góp những ý kiến quý báu cho luận văn cũng như động viên, khích lệ chúng tôi trong
thời gian thực hiện dé tài này
Cuối cùng, chúng tôi muốn bảy tỏ lòng biết ơn sâu sắc đến những người thân trong gia đình, đặc biệt là cha mẹ của chúng tôi, vì tất cả tắm lòng yêu thương bao la và
Trang 21.3 Cân băng tải trong mạng gôm nhiêu router kết nôi với nhau 28 1.3.1 Routing Information Protocol (RIP) - «<< <<<+++eesssssss 29 1.3.2 Interior Gateway Routing Protocol (IGRP) va Enhanced IGRP
1.3.3 Open Shortest Path FIrst (OSPE) Ăn 32 1.3.4 Per destinafion Q11 vn re 32
2 TÔNG QUAN VỀ LAYER 2 SWITCH .2-5- << S555 se s£s£seseeses 35
2.L Giới thiệu chung ccereehihHHhHHHHhe 35 2.2 - Các chức năng điên hình của layer 2 swlfCh -ccSSssssssssssssssss 36
Trang 3Muc luc
3 TONG QUAN VE CAC CHUONG TRINH NETWORK SIMULATOR 52
3.1 Lý do sử dụng SImulafIOT\ +55 211111111 Ea 52 3.1.1 Định nghĩa 003000111111 1111119933111 1 1111 vn ng và 52
3.1.3 Những ưu khuyết điểm của hệ thống Simulation . - +: 53 3.2 _ Các chương trình Simulation đang được sử dụng «‹ 53 3.2.1 MIT's 006) na 53
3.3.3 Sơ lược về NAM (Network AniMAfOr) - - 566cc cxseeeseseee 63
3.3.4 Một chương trình ví dụ về NŠ zc.c¿ ¿, c4 cv ekekekekeesree 65
4 CÁC MÔ HÌNH SOFTSWITCH VÀ KẾT QUÁ KIỂM TRA 71
Al Cacm6o hinh SoftSwitch nc cccccsssssssscccceeeeeeeeeeeseessssnsaeeeeeeeeeeeeees 72 4.2 Két qua kiém tra cac m6 hinh SoftSwitch bang NS 76 4.2.1 Két qua kiém tra m6 hinh 2 ccceccsssssssesscsesesesscecscscssasessvevens 76 4.2.2 Két qua kiém tra m6 hinh 3 cccecccssssssssecscsesesesesecscscscasessvevens 77
4.2.3 Két qua kiém trams hinh 4 ccccsssssssecscsesesesesesscesscssesssenens 78
5 CÁC MÔ HÌNH CÂN BẰNG TẢI VÀ KẾT QUÁ KIÊM TRA 82
5.1 Các mô hình cân bằng tải đỀ nghị - c3 SESESESEeErkrkrkrkekeeeed 82 S11 ThheØ SỐ thread - - + E+EEExSx St v11 1111515111111 ckckred 82
6.1.1 Cac hang sé được định nghĩa trong chương trình - - - 5s: 92
6.1.2 Các biến toàn CỤC -.: :-©c+22++ExEE2 SE 92
Trang 47.3 Đánh giá về chương trình SoftSwifch ccieieirreke 104
7.3.1 Ung dụng Ï eo 104 7.3.2 Ung dụng 2 -S LH SH HH HH cà cọ 105
7.4 Hướng mở rộng của chương trình << << «<< ẾCeEkssssssssk 107
TÀI LIỆU THAM IKKHÁOO 5 5 5 5 55v ca 50885 sseseeeeee 108
PHU LUC = 111
Trang 5Hinh 1-8 — Internal Spanning TTTee + s3 188555511 1111111 11111 ngư 26 Hình 1-9 — EtherChanneÌ . - 111115 ẤN 3131113119583 11 1111 1 ng ng và 28
Hình 1-10 — Thí dụ 1 về RIP 2-55 2ếẾ+Sx2292Ö% 2v 2x2ExEEkEEkrrerkrrrrrrrerrres 29 Hình 1-11 — Thí dụ 2 về RÍP - ¿- ¿-5s55£25+2EEÉE++22E221211211221211211211 21111 e2 30
0050 i61 a 31 Hình 2-I — Generic SWIfch 2195841111111 1111111000001 1 kg 2v 36
Hình 2-2 — Các bước học địa chỉ của SWIfch cccccs sa 37 Hình 2-3 — Các bước học địa chỉ của SWIfCH: - c S111 111v ve 38 Hình 2-4 — Các bước học địa chỉ của SwIftch - - ccccss s1 111v va 39
Hình 2-5 — Quyết định forward/fTÏ©T - + xxx SESk*keEEEEEEEEEEEEEEEEkrkrkrrereee 40
Hinh 2-6 — Loai bo Broadcast Storm . - SE 111111311 1 111v se 43
Hình 2-7 — Loại bỏ truyền lặp nonbroadeast frame . + 2 +s+s+Ee£+e+xexsreee 44 Hình 2-§ — Loại bỏ tính không ồn định của MAC database 5-5-5 25s: 46 Hình 3-1 - Quá trình biên dịch một tập tin feÌ << << << << eesesssssss 62 Hình 3-2 — Giao diện và các phím chức năng của NAM ««cs++<<ss 65
Hình 3-3 — Hình ảnh khiNS bắt đầu chạy - - 5 SE Ekckekekekeeeereeree 68
Hình 3-4— Hình ảnh chụp được trong quá trình chạy NS <<< 69
Hình 3-5 — Khi kích chuột phải trên các packet, chọn MonIfor - 69
Hình 4-I — Mô hình I của SoffSWItcl cc c n1 010111 S HS S99 2011 vv vn ngư 72 Hình 4-2 — Mô hình 2 của Sof[SWIfcl -cc c1 10000011111 99 23111111 ng ng 73 Hình 4-3 — Mô hình 3 của Sof[SWIfcl -cc c n1 01011 S HH9 20111 ng ng 74 Hình 4-4 — Mô hình 4 của Sof[SWIfcl c c cn 101111111 S 1 99 0011111 ng ng 75 Hinh 4-5 — Giao diện chương trình ÌNS - S Q11 S992 11 1v vn 80
Hinh 5-1 — Mô hình cân bằng tải Multi-thread ]-l - << se +x+k+x+xseeeeesese 83 Hình 5-2 — Mô hình cân bằng tải Multi-thread Ï-n - << 5s sxk+v+veeeeeeeeee 84 Hình 5-3 — Mô hình cân bằng tải sử dụng độ ưu tiên ]-1 55 +s+s+s+sscse 85 Hình 5-4 — Mô hình cân bằng tải sử dụng độ ưu tiên I-n - 2 2-s+s+sscee 86
Hình 6-1 — Mô hình câu trúc của forwarding tabÌe - + sex +veveeeeeeeree 93
Trang 6Bang hình vẽ
Hình 7-3 — Mô hình ứng dụng Ì - - << << <5 5 1111313331111 1exrres 104 Hình 7-4 — Mô hính ứng dụng 2 - E221 1111111111111 11881111 ngư 106
Hình phụ lục I — Giao diện chương trình - 5555522333333 *++55555555555xxexss 112
Hình phụ lục 2 — Giao diện mô tả quá trình truyền nhận frame .-. 113
Hình phụ lục 3 — MH2: Packet đi từ NÏC . 5-5 5S SS23256656555serrses 113
Hình phụ lục 4— MH2: Các packet bắt đầu đi đến Switching module 114 Hinh phu luc 5 — MH2: Packet dang xu lý trong module SŠwitching 114
Hinh phu luc 6 — MH2: Packet di ra khoi module Switching để đến NIC 115
Hinh phu luc 7 — MH2: Packet dén NIC wo.cecceceececcesssesesscscsescssscscersessscacaliesusees 115 Hinh phu luc 8 — MH2 Drop: Packet bat dau di tir NIC dén module Switching .116
Hinh phu luc 9 — MH2 Drop: Packet dang xu ly 6 module Switching, 6 vuong mau xanh 1a packet bi drop do Qua tal ccc ccccccccccccssessssssssnceeeeecedeecsegtanbacsssseeeeees 116 Hinh phu luc 10 — MH2 Drop: Packet duoc xu ly va dua đến NỊC 117
Hinh phu luc 11 — MH2 Drop: Packet đến được NÏC .- - 2E e+s+s+esrsrered 117 Hình phụ lục 12— MH3: Packet bắt đầu di chuyỀn -sc¿- 5c 55252 Se+e+e+esrerered 118 Hình phụ lục 13 — MH3: Sơ đồ Packet di chuyỀn í 5-5-5 2S2ce+E+seesrerered 118
Hình phụ lục 14— MH3 Drop: Packet bắt đầu di chuyỀn - << «se: 119 Hinh phu luc 15 — MH3 Drop: Packet bi drop tai-Switching do khong xu ly kip 119 Hinh phu luc 16 — MH3 Drop: So d6 di chuyén Packet . - 5c sec: 120
Hình phụ lục 17 — MH4: Các packet bắt đầu di ehuyễn - - ccscecee: 120 Hình phụ lục 18 - MH4: Sơ đồ packet di chuyỀn 2-6 + +E+E+EsEsEeErereei 121
Hình phụ lục 19 - MH4 Drop: Packet bắt đầu di chuyỀn - - sec: 121 Hinh 20 — MH4 Drop: Packet bi drop.do Thread Send khong xu ly kịp 122 Hinh phu luc 21 — MH4 Drop: Ban dau thi Thread Send van chua bi qua tai, cdc packet van di dén đích . ¿-¿- - + SE 9E S111 11115111111 rk 122
Hình phụ lục 22 — MH 1-N: Packet bat dau di chuyén c0 crg 123
Hình phụ lục 23 - MH'1-N: Sơ đồ các packet di chuyên -cscscscecee: 123 Hình phụ lục 24 — MH 1-I: Packet bắt đầu di chuyỀn - - - +c+cscsEereree 124
Hình phụ lục 25 — MH 1-1: Sơ đồ paeket di chuyển - - 5 c+cscs£cecee: 124
Trang 7Tom tat ludn van
TOM TAT LUAN VAN
Yêu câu về băng thông luôn là một vân đề làm “đau đầu” các nhà quản trị mạng, dù
răng tôc độ của những thiết bị mạng ngày càng được cải thiện và nâng cao Một trong các hướng giải quyết mâu thuân giữa nhu câu về băng thông và băng thông thực tế của mạng truyền thông là kỹ thuật cân băng tải
Cân băng tải có thể được thực hiện ở các tầng 2, 3 và 4 của mô hình OSI Hiện nay,
có nhiều phương pháp được đề xuất cho phép thực hiện việc cân băng tải giữa các collision domain (tầng 2) và giữa các broadcast đomain (tầng 3, 4) Tuy nhiên, hầu như chưa có giải pháp và thiết bị nảo cho phép thực hiện cân bang tai giữa các collision domain dya trén dia chi MAC Chuong Ï của luận văn này sẽ trình bay chi tiết đến các phương pháp cân bằng tải trên mạng đang được sử dụng phố biến hiện nay
Kiên trúc, các chức năng chung cũng như cách thức nhận và truyền frame của một layer 2 switch điển hình sẽ được đề cập đến trong chương tiếp theo
Network Simulator (NS) version 2.0 la mét chuong trình mô phỏng hướng đối tượng, cho phép mô phỏng một mạng máy tính bao gém các thành phân “cứng” của
mạng như đường truyền, các thiết bị mạng, server, và các hoạt động truyền thông
giữa chúng Nhóm thực hiện đề tài đã tiến hành nghiên cứu và sử dung NS như là một môi trường mô phỏng các module “mềm” có trong một layer 2 switch, từ đó, cho phép kiểm tra và đánh giá các phương án khác nhau trong quá trình tìm ra mô hình thích hợp để giải quyết vẫn đề được đặt ra Các chương trình giả lập mạng
Trang 8Tom tat ludn van
SoftSwitch la một phần mềm cho phép bién một PC chạy hệ điều hành Linux thành
một layer 2 switch đơn giản (chủ yếu đảm bảo chức năng switching), rẻ tiền nhưng rất hiệu quả về tốc độ Các mô hình switching liên quan đến SoftSwitch được mô phỏng lại băng NS để khăng định các kết quả thực nghiệm là đáng tin cậy
Dựa trên những kết quả đánh giá có được thông qua việc mô phỏng noi trên, đề tài
đã lựa chọn mô hình switching tốt nhất làm cơ sở cho việc đề xuất các giải pháp cân bằng tải trong một layer 2 switch Các giải pháp này cũng được mô phỏng để lựa chọn ra một giải pháp tôi ưu cho vân đề
Cuối cùng, phần mềm tương ứng giải pháp tôi ưu cho cân băng tải trên một layer 2 switch duoc xây dựng trên cơ sở mở rộng phần mềm SoftSwitch Các kết quả thử nghiệm, đánh giá và hướng phát triển của chương trình được đề cập ở chương cuối
của luận văn
Trang 9Chương | Gioi Thiéu
Chương |
GIOI THIEU
Ngày nay, công nghệ thông tin đã và đang đóng vai trò quan trọng trong đời sống kinh tế — xã hội của nhiều quốc gia trên thế giới, là một thành phần không thể thiếu
trong một xã hội hiện đại
Nói đến công nghệ thông tin không thể không đề cập đến lĩnh vực mạng máy tính,
đặc biệt là mạng Internet Với sự phát trién mạnh mẽ và liên tục của công nghệ
thông tin nói chung và công nghệ mạng nói riêng, Internet đang được sử dụng rộng rãi từ các cơ quan chính phủ, các công ty hoạt động trong nhiều lĩnh vực khác nhau cho đến các hộ gia đình Con người ngày cảng nhận thấy tầm quan trọng cũng như những lợi ích lớn lao mà mang Internet mang lai Internet khong chi la kho tri thức
không lỗ trên tất cả các lĩnh vực từ khoa học kỹ thuật, văn học nghệ thuật, thiên văn học, y học, giáo dục, cho đến âm nhạc và giải trí mà đó còn là nơi con người có
thể thư giản, vui chơi sau những giờ làm việc căng thắng Tất cả những điều đó đã làm cho số người sử dụng Internet không ngừng tăng lên một cách chóng mặt hàng ngày hàng gio
Sự gia tăng số người dùng trên mạng dẫn đến hệ quả tất yếu đó là sự tranh chấp tài nguyên và lưu lượng tải của mạng không ngừng tăng lên Điều nảy dẫn đến mâu thuẫn giữa nhu cầu băng thông và băng thông thực tế Đây là một vấn đề luôn được đặt ra khi thiết kế và xây dựng một mạng máy tính
Trang 10Chuong | GIỚI Thiệu
OSPFE ) cũng như các thiết bị mạng hoạt động ở tầng 3, 4 (router) cua mo hình OSI hién nay đều có hỗ trợ khả năng thực hiện cân bằng tải dựa trên địa chỉ IP và
chỉ số port của ứng dụng, nghĩa là cân băng tải được thực hiện giữa các broadcast
domain Một số kỹ thuật khác như VLUAN, EtherChannel, cho phép thực hiện cần
bằng tải giữa các collision domain trong một broadcast domain Tuy nhién, hau như chưa có một phương pháp hay một thiết bị mạng nào cung cấp cơ chế đề tiến hành
cần bằng tải dựa trên từng địa chỉ MAC cụ thé
Do do, dé tai “X4y dung mét Traffic Balancing Layer 2 trên nền SoftSwitch” được thực hiện nhăm giải quyet van dé dugc dat ra 6 trén
Phần tiếp theo của chương này sẽ trình bày các phương pháp cân bằng tải tại các tầng 2, 3 và 4 của mô hình OSI Trong đó, mục 1.1 đề cập đến những kỹ thuật cân bằng tải giữa các server Các cách thức đề thực hiện cân băng tải giữa các collision domain sẽ được trình bày trong mục 1.2 Cúỗi cùng, trong mục 1.3 sẽ là các phương pháp cân bằng tải giữa các broadéast domain
1.1 Những kỹ thuật cân băng tải giữa các server
Cân băng tải giữa các server (Server Load Balancing) là quá trình phân phôi các yêu
câu dịch vụ đên một nhóm những server Thực hiện cân băng tải đôi với các server
là một giải pháp được châp nhận rộng rãi đề đáp ứng những yêu câu về tính săn
sàng và hiệu suât hoạt động của server
Trước đây việc phân phối các yêu câu kết nỗi từ client đến các server trong một
cluster dựa trên Round — Robin DNS (RR — DNS) Điều nảy được thực hiện bằng
cách ánh xạ một tên miền đơn vào nhiều địa chỉ IP khác nhau Tuy nhiên, do những
cơ chế phức tạp của giao thức DNS (vấn đề caching) nên kỹ thuật RR — DNS bộc lộ
Trang 11Chuong | GIỚI Thiệu
nhiêu hạn chê trong cân băng tải và tính chịu lỗi đôi voi nhitng Web Server cluster
có khả năng mở rộng
Hiện nay, có 2 kỹ thuật được sử dụng phô biến: xử lý các yêu kết nối tập trung (Centralized Connection Routing — CCR) va xử lý các yêu câu kết nối phân tán (Distributed Connection Routing — DPR)
1.1.1 Xử lý các yêu cầu kết nối tập trung
Thay vì ủy quyền cho DNS việc phân phối những yêu cầu đến các server riêng
lẻ trong một cluster, phương pháp xử lý các yêu cầu kết nỗi tập trung (CCR)
su dung mot “router” cục bộ đê thực hiện chức năng này
Hinh 1-1 — 2-way packet rewriting
Như được minh họa trong hình vẽ 1.1, MagicRouter hoạt động như một bảng
chuyên mạch, phân phôi các yêu câu dịch vụ Web đên các node riêng lẻ trong
cluster Để thực hiện được điều này, đòi hỏi các gói tin gởi đi từ client phải
Trang 12Chuong | GIỚI Thiệu
được chuyền tiếp (hay “được viết lại”) bởi MagiecRouter đến một server được
lựa chọn để phục vụ cho kết nối TCP từ client Ngoài ra, các gói tin trả lời từ
server cho client cũng đòi hỏi phải “được viết lại” bởi MagieRouter Trong phương pháp này, chỉ có địa chỉ IP của “routerˆ được công bố thông qua DNS
Kỹ thuật packef rewriffing làm cho người dùng có cảm giác như đang.sử dụng
một Web Server có “hiệu suất hoạt động cao”, nhưng thực sự đó là một hệ
thống bao gồm một thiết bị trung tâm đóng vai trò như một thiết bị định tuyến cho toàn bộ hệ thống và một tập hợp các server năm phía sau Một số giải pháp khác cũng đã được nghiên cứu và phát triển dựa trên kiến trúc tương tự bao gồm: Local Director của Cisco vả Interactive Network Dispatcher của IBM
Ưu điểm của phương pháp CCR đó là:
e Việc định hướng lại cho các kết nối từ client đến các server thích hợp
trong hệ thông là hoàn toàn troñg suốt với người dùng
e Tính linh hoạt cao: khi phát hiện một node bị “chết”, local router sẽ
chuyền tất cả các yêu câu kế tiếp đến node khác đang hoạt động
Tuy nhiên, phương pháp CCR cũng còn tôn tại một số khuyết điểm sau:
e©_ Khi số kết nối từ client đến local router tăng cao, toàn hệ thông sẽ gặp tình trạng nút cổ chai (bottle-neck) ngay tại thiết bị trung tâm này
e Thiết bị trung tâm (MagicRouter) là thiết bị phần cứng đặc biệt, giá thành cao
e Khi thiết bị trung tâm bị hỏng, toàn bộ hệ thống sẽ ngưng hoạt động, do
đó tính chịu lỗi thấp
e_ Tăng chỉ phí xử lý do phải “viết lại” gói tin theo cả 2 chiều tir client dén
server và ngược lại
Trang 13Chuong | GIỚI Thiệu
bỏ Các server bên trong hệ thống sẽ trả lời trực tiếp cho client mà không cần thông qua TCP Router Điều này đặc biệt quan trọng khi phải xử lý một lượng
lớn dữ liệu Thứ hai, TCP Router sẽ “chuyển” các kết nỗi đến các server dựa
trên trạng thái của những server này Điều này có nghĩa là TCP Router phải
theo dõi việc định hướng lại các kết nỗi từ client dén server
Server 3
Hinh 1-2 — 1-way packet rewriting
Mặc dù, kiến trúc dùng TCP Router cho phép khắc phục mot phan tinh trang nút cô chai do chỉ phải viế? /ại gói fin theo một chiều từ client đến server,
Trang 14Chuong | GIỚI Thiệu
Tóm lại, kỹ thuật xử lý các yêu cầu kết nối tập trung rõ ràng đã giải quyết
được vẫn dé cân bằng tải trên mạng Tuy nhiên, kỹ thuật này có tính chịu lỗi,
tính sẵn sàng thấp và chỉ phí cao (do đòi hỏi phải có thiết bi dự phòng) Vì thé,
kỹ thuật xử lý các yêu cầu kết nối phân tán được đề xuất nhăm khắc phục những nhược điêm trên
1.1.2 Xử lý các yêu cầu kết nối phân tán
Tất cả các kỹ thuật định hướng kết nối được trình bày ở trên (còn gọi là kỹ
thuật Layer 4 Switching) đều sử dụng một nodefrung tâm để xử lý tất cả các yêu cầu đến từ client Ngược lại, trong kỹ thuật “viết lại” gói tin phân tán (Distributed Packet Rewritting — DPR) hay còn được gọi là kỹ thuật định hướng kết nói phân tán, tất cả các host của hệ thống phân tán đều tham gia vào việc xử lý các kết nỗi giữa client với server (như được minh họa ở hình 1.3) Cách tiếp cận này làm tăng khả năng mở rộng cũng như tính chịu lỗi của hệ thông so với các hệ thông sử dụng router chuyên biệt năm ở vị trí trung tâm
DPR là một kỹ thuật hoạt động ở tầng IP, cho phép một server có khả năng định hướng lại một kết nối từ client đến một server khác dựa trên mỗi gói fin
đâu tiên (SYN packet) cũng như thông tin về tải (load) của các server trong hệ thống: Sử dụng thông tin này, một server trong hệ thống DPR có thể định
hướng lại một kết nối đến một server khác hoặc chính bản thân server này sẽ
xử lý kết nối đó Trong trường hợp kết nối được định hướng lại, server xử lý kết nối sẽ trả lời trực tiếp cho client nhưng địa chỉ nguồn của gói tin là địa chỉ của server đã tiếp nhận yêu cầu kết nói lúc ban đầu Mỗi server trong hệ thông DPR cung cấp cả dịch vụ Web và chức năng định tuyến Ngoài ra, địa chỉ IP của tất cả server trong hệ thông DPR sẽ được công bố một cách tuần tự trên Internet dựa trên kỹ thuật DNS Round Robin
Trang 15Chuong | GIỚI Thiệu
Hệ thống sử dụng kỹ thuật DPR có một số ưu điểm sau:
e Hệ thống dé dàng mở rộng Khi thêm vào hệ thống một server mới,
không đòi hỏi phải có phan cứng đặc biệt; ngược lại còn tận dụng được
khả năng của server được thêm vào để tăng hiệu suất cũng nhự khả năng cung cấp dịch vụ và định tuyến kết nối của hệ thống
e Hệ thống có tính chịu lỗi cao, mềm dẻo, linh hoạt
e Quá trình định hướng lại các kết nối từ client đến server hoàn toàn
trong suôt với người dùng
Kỹ thuật này vân còn tôn tại một khuyêt điểm: tôn tài nguyên trên môi server
do môi server trong hệ thông đêu phải lưu danh sách các server khác trong hệ thống cũng như một bảng định tuyến các kết nỗi
Hinh 1-3 — Distributed packet rewriting
Kỹ thuật DPR hoạt động dựa trên 2 cơ ché: DPR Stateless va DPR Stateful
Trang 16Chuong | Giới Thiệu
1.1.2.1 DPR Stateless:
DPR Stateless không đòi hỏi bất kỳ thông tin nào khác ngoài những gì
có thể được tìm thấy trong các header của mỗi gói tin được gởi đi Cơ
chế nảy sử dụng một hàm băm để tính ra một giá trị băm dựa trên địa
chỉ IP và port number của gói tin gởi từ client để quyết định đích đến cho mỗi gói tin IP/port của client, sau khi được tính toán băng hàm
băm, tạo ra một giá trị duy nhất làm khóa cho những yêu cầu từ client
đến server Do đó, có thể dùng hai giá trị này để định hướng lại cho
những yêu cầu Với việc lựa chọn TCP port, client đã gián tiếp lựa chọn
server để phục vụ mình Những chỉ số porf tiếp theo từ cùng một client
được ánh xạ vào các server khác, nhờ đó giảm bớt sự mắt cân băng do
sự tràn ngập những yêu cau tt client gay ra:
DPR Stateless có ưu điểm của là dễ thực hiện, kết quả phân tải chấp
nhận được, không có overhead Tuy nhiên, việc định hướng lại cho các
kết nối không thể dựa trên những nhân tố khác như: tải của server, khoảng cách, Để khắc phục những khuyết điểm của co ché DPR
Stateless, nguoi ta dé xuất một cơ chế khác đó là DPR Stateful
1.1.2.2 DPR Stateful:
Theo co chế DPR Stateful, mỗi server lưu giữ một danh sách tất cả các
server khác trong hệ thông, bao gồm: địa chỉ IP và tải hiện thời trên mỗi server, cũng như các bảng định tuyến chứa thông tin về những kết nối được định hướng đến các server khác Theo từng khoảng thời gian xác
định, mỗi server sẽ thông báo cho những server khác về tải hiện tại của
nó bằng cách gởi đi các géi tin UDP Multicast hay Broadcast
Trang 17Chuong | Giới Thiệu
Tải của mỗi server trong hệ thống có thể được tính toán dựa trên các
yếu tố khác nhau như: việc sử dụng CPU, thời gian trả lời, số kết nối
được định hướng lại mà server đang phục vu, Tuy nhiên, các kết quả thực nghiệm cho thay việc tính tải dựa trên số kết nỗi TCP đang mở
trên môi server là hiệu quả nhat
Server đóng vai trò bộ định hướng kết nối gọi là rewritér, khi nhận
được gói tin đầu tiên của dòng TCP từ client, có quyền chọn một đích đến cho kết nối này, dựa trên bảng trạng thái của những server trong hệ thống mà nó lưu giữ Sau khi ghi nhận vào bảng định tuyến, server đóng vai trò là rewriter này sẽ chuyến tiếp các gói tin liên quan đến kết
nối bằng cách viết lại địa chỉ MAC hay sử dụng kỹ thuật IP -— IP
encapsulation, tùy thuộc vào vị trí đích đên của gói tin trên mạng
Giải thuật cho một server khi nhận gói tin IP:
Nếu (gói tin TCP và chứa cờ SYN)
£ Nếu (tải trên Server < tải lớn nhất)
Server tự xử lý Ngược lại
Tạo một mục mới trong bảng định tuyến Gói tin được chuyền tiếp
)
Ngược lại (không chứa cờ SYN)
{Nếu (kết nối được định hướng lại)
Gói tin được chuyền tiếp Ngược lại
Server tự xử lý
Mặc dù, DPR Stateful đã khắc phục được những khuyết điểm của DPR
Stateless, nhưng nó lại làm tăng overhead, giảm băng thông trên mạng cũng như tiêu tốn tài nguyên của server cho việc lưu giữ các bảng định
Trang 18Chuong | GIỚI Thiệu
1.1.2.3 Phương pháp đánh địa chỉ áp dụng cho hệ thống DPR:
Trong quá trình định hướng lại kết nỗi giữa các server trong hệ thống
có 2 phương pháp đánh địa chỉ được áp dụng:
e_ Server đóng vai trò rewriter chỉ viết lại địa chỉ MAC củá gói tin
và truyền đi, giữ nguyên địa chỉ IP và checksum của góỉ-tin Phương pháp này hiệu quả nhất nhưng chỉ thực hiện được khi 2 server (rewriter và server phục vụ cho kết ñỗi được định hướng lại bởi rewrifer) thuộc cùng một LAN
e_ Đối với trường hợp rewriter server và server phục vụ kết nỗi
được định hướng lại bởi rewriter không thuộc cùng một LAN,
việc định hướng phải xảy ra ở mức IP sử dụng kỹ thuật IP — IP encapsulation: tại rewriter, gói tin đến từ client được đóng gói trong mot goi tin IP khac Goi tin này có địa chỉ IP đích (IP2) là địa chỉ của sefver xử lý kết nối Khi gói tin đến server có địa chỉ IP2, header IP — IP bên ngoài bị gỡ bỏ Header bên trong được
xử ly:
Khác với kỹ thuật xử lý các yêu cầu kết nỗi tập trung chỉ có một địa chỉ
IP của thiết bị trung tâm (MagicRouter hay TCP Router) được công bồ,
trong kỹ thuật DPR, có nhiều hơn một địa chỉ IP được công bố trên
mạng Những địa chỉ IP này sẽ được phân giải luôn phiên đến client dựa trên kỹ thuật Round Robin DNS
1.1.2.4 DNS Round Robin:
Đây là một kỹ thuật cần bằng tải được thực hiện tại DNS Server Để cần bằng tải trên các server, DNS Server duy trì một số địa chỉ IP khác
Trang 19Chuong | Giới Thiệu
nhau cho một tên miền Nhiều địa chỉ IP đại diện cho nhiều máy trong một hệ thông, tât cả chúng đêu ánh xạ vào cùng một tên miên logic
Round Robin hoạt động trên cơ sở luân phiên hoán đổi địa chỉ IP cho
một tên miễn theo cách sau: một địa chỉ IP, trong danh sách các địa chỉ
IP của một tên miền, được dùng để trả lời cho một câu truy van từ client Dia chi nay, sau d6, duoc đưa về cuối danh sách; địa chỉ IP.của
server kế tiếp sẽ được dùng để trả lời cho câu truy vấn tiếp theo và sau
đó lại được đưa xuống cuối danh sách, Quá trình này cứ thế diễn ra, phụ thuộc vào sô server đang được sử dụng
Thí dụ: có 3 server cùng chira website www.loadbalancing.com DNS Server sẽ chứa 3 record sau:
Khi một client truy vẫn DNS Server về website này, nếu không có chức
nang DNS Round Robin: server co dia chi IP thu nhất luôn luôn được dùng để phục vụ cho client Việc sử dụng các server có địa chi IP thu
hai và thứ ba chỉ xảy ra khi server thứ nhất (200.100.10.1) bị hỏng
Ngược lại, nếu có chức năng DNS Round Robin: với mỗi câu truy van,
giải thuật Round Robin xoay vòng thứ tự của cac record ma DNS Server trả về cho client để cân băng tải giữa tất cả các host:
e Lan dau, client truy vẫn DNS Server, DNS Server trả về 200.100.10.1 200.100.11.1 200.100.12.1 cho client
e Lân thứ hai, DNS Server trả về 200.100.11.1 200.100.12.1 200.100.10.1 cho client
Trang 20Chuong | GIỚI Thiệu
Cac DNS Server hiện nay đều có hỗ trợ chức năng này Quá trình cai đặt RR — DNS dễ dàng, chỉ phí thấp Bên cạnh những ưu điểm, kỹ thuật này vẫn có những nhược điểm đó là tính chịu lỗi không cao và cân bằng
tải kém
Tóm lại, việc thực hiện cân băng tải giữa các server thực sự đã giải quyêt một sô yêu câu đang ngày càng trở nên quan trọng trong các hệ thông mạng: khả năng mở
rộng, hiệu suât hoạt động, tính săn sàng và tính chịu lôi
1.2 Cân băng tải trong mạng nhiều bridge/switch nổi với nhau
Dé dam bảo tính sẵn sàng và hiệu suất hoạt động của mạng cao, người ta thường thiết kế các mạng có những đường truyền dư thừa Các đường truyền này ngoài nhiệm vụ dự phòng, chúng còn có khả năng cho phép thực hiện cân băng tải
Tuy nhiên, trong mạng Ethernet, chỉ cho phép một con đường “hoạt động” duy nhất ton tại giữa hai switch/bridge Nhiều con đường “hoạt động” giữa các switch/bridge
sẽ hình thành nên các vòng loop trong mang Dé giai quyét van dé nay, chuan IEEE 802.1q dinh nghia m6t Common Spanning Tree (CST), nghia là chi thừa nhận một
đồ hình cây đuy nhất, cho toàn bộ mạng được “bắc cầu” (bridged network) Chuan này hoàn toàn không quan tâm đến số lượng các VLAN có trong mạng Nếu trên mạng có nhiều con đường có thể dùng để phân tải luồng dữ liệu của các VLAN,
CST sẽ vô hiệu một số con đường truyền dữ liệu dư thừa đó nhờ vào Spanning Tree
Protocol (STP)
Xét 2 thí dụ sau:
e_ Thí dụ 1: cho một mạng gồm có 3 bridge nối kết với nhau và có 1000 VUAN
như hình vẽ 1.4 bên dưới:
Trang 21Chuong | GIỚI Thiệu
Root CST
Vian 501-1000 Vian 1-500 al “rar S64-1806-
Hinh 1-4 — Thí dụ 1 về CST
Nếu CST được áp dụng vào đồ hình trên để xác định một “cây” chung cho
toàn mạng ta sẽ được kêt quả như sau:
o_ Con đường trực tiếp đi từ A đến D2 và ngược lại bị khóa để chống loop
o Luông dữ liệu của tất cả VLAN từ 1 đến 1000 từ A đều phải đi qua
DI để đến D2 và ngược lại
e Thi du 2: cho mot mang gồm có 3 switch nối kết với nhau Trong mạng có 2
VLAN voi ID 10 va 20 Swl c6 2 VLAN 10 va 20 duge gan vao 2 port duy nhat trén switch dé 2 luéng dit liéu cla VLAN 10 va 20 “chay” trén hai con
duong riéng biét nhu duoc minh hoa o hinh 1.5 Gia su mang chay CST va
Sw3 duoc chon lam root bridge, STP sé khéa con dudng gitra Swl va Sw2
Khi điều này xảy ra, luồng dữ liệu từ VLAN 20 không thể truyền đi trên
mạng
Trang 22Chuong | GIỚI Thiệu
1.2.1 Per-VLAN Spanning Tree (PVST) va PVST+
Trong giải pháp PVST và PVST+, mỗi VLAN tương ứng với một Spanning Tree Do đó, mỗi VLAN có một đồ hình không loop riêng của nó
Xét lai thi du 1 ở mục 1.2, mỗi VLAN từ 1 — 1000 có một thể hiện Spanning
Tree (ST Instance — STI) Cac Spanning Tree của những VLAN từ 1 đến 500 lay DI làm root bridge, khóa đường truyền giữa A và D2 Các Spanning Tree của những VLAN từ 501 đến 1000 lấy D2 làm root bridge, khóa đường truyền giữa A và DI Khi đó, luồng dữ liệu của 1000 VLAN sẽ được phân đôi theo 2 con đường khác nhau (hình vẽ 1.6) Mặc dù, thực sự chỉ có 2 đồ hình logic
khác nhau nhưng số STI là 1000 Đây cũng chính là một khuyết điểm của giải
pháp này
Trang 23Chuong | GIỚI Thiệu
Xem lại thí dụ 2 ở mục 1.2, nễu VLAN 10 được gan cho STH va VLAN 20
duoc gan cho STI2 (nhu hinh vé 1.7), mang sẽ có hai độ hình Spanning Tree riêng biệt Sw3 sẽ trở thành root bridge của thể hiện I va sé khoa đường kết nối giữa Swl và Sw2 Tuy nhiên, không giống như trường hợp mạng chạy CST, luéng di liéu tir VLAN 20 có thể truyền đi trên mạng Điều này xảy ra là
do STI2 chọn Sw2 làm root bridge cho đồ hình Spanning Tree của nó và khóa đường truyền giữa Swl và Sw3, không cho luỗng dữ liệu từ VLUAN 20 đi qua
Switch 1
Trang 24Chuong | GIỚI Thiệu
Ưu điểm của giải pháp PVST và PVST+ chính là khả năng cân bằng tải và tận dụng các đường truyền dư thừa trong mạng Tuy nhiên, khi số lượng VLAN trong mạng nhiều, việc tính toán các Spanning Tree cho từng VLAN sẽ dẫn
đến sự quá tải trên CPU của switch, kèm theo đó là sự tăng lưu lượng mạng do
mỗi STI gởi đi BPDU của riêng nó
Chính vì thế, tổ chức IEEE đã đưa ra giải phap Multiple Spanning Tree (IEEE 802.1) để khắc phục những khuyết điểm của PVST và PVST#
1.2.2 Multiple Spanning Tree (MST)
MST kết hợp được những ưu điểm của ca PVST+ va IEEE 802.1q (CST)
Trong các mạng chạy MST mỗi VLAN có một đô hình riêng và một STI có
thế được chia sẻ bởi nhiều VLAN Do đó, số lượng STI it hon số VLAN thực
có trong mạng Mỗi một “cây” được gọi là một MST Instance (MST
Xét lại thí dụ I ở mục 1.2, khi mạng chạy MST, các VLAN từ 1 đến 500 được ánh xạ vào một Spanning Tree và các VLAN từ 501 đến 1000 được ánh xạ vào
một Spanning.Tree khác Lưu ý răng bây giờ chỉ có 2 đồ hình “cây” được duy trì, trong khi eon số này khi chạy PVST+ là 1000
Mặc dù, MST là một giao thức mới và phức tạp nhưng nó cho phép các mạng
thực hiện cân bằng tải, đồng thời tính chịu lỗi của mạng cao cũng như ít hao
tốn tài nguyên CPU của switch dùng cho việc tính toán các instance
Phần tiếp theo sẽ trình bày các khái niệm liên quan đến MST như MST Region, Internal Spanning Tree va Multiple Spanning Tree Instance Chung có những đặc điểm gì? Hoạt động ra sao?
Trang 25Chuong | Giới Thiệu
Mỗi MST bridge/switch phải có thể quản lý ít nhất 2 lơại thể hiện:
Internal Spanning Tree (IST) và một hay nhiều MSTL Và một MST Region c6 toi da 16 instance: mét IST va 15 MSTI
Mỗi switch chạy MST trong mạng đều có một cầu hình MST, gồm 3
thuộc tính sau:
o_ Tên của cấu hình (bao gồm cả chữ và số), độ lớn 32 byte
o_ Số revision của câu hình, độ lớn 2 byte
o_ Một bảng gồm 4096 phan tir ứng với 4096 VLAN co thé duoc
cho phép tạo fa trên switch Bảng này dùng để xác định những
VLAN nao thuộc MSTTT nào
Những switch thuộc cùng một MST Region sẽ có chung thông tin cấu
hình
1.2.2.2 Internal Spanning Tree (IST):
IST duoc str dung dé cho phép một MST Region có khả năng tương tác voi cac vung (region) khac su dung CST (IEEE 802.1q) IST dai dién cho toàn b6 MST Region như 1a mét bridge (switch) a0 chay CST dé
“giao tiép” voi bén ngoai Noi cach khac, IST chinh 1a dé hinh “hoat động” duy nhất của toàn bộ MST Region mà bên ngoài có thể nhận
biết
Trang 26Chuong | Giới Thiệu
Thí dụ, xét hình minh họa 1.8 bên dưới Trong một mạng “bắc cầu”
điển hình, bạn sẽ mong đợi thấy một port bị khóa giữa 2 switch M và B
Thay vì khóa đường đi trên port của D, bạn sẽ mong đợi “loại bỏ” loop
thứ 2 trong mạng bang cach khóa một port ở một vị trí nào đó ở giữa
MST Region Tuy nhiên, do IST, toàn bộ region xuất hiện như một
bridge ảo chạy CST Do đó, bridge ảo khóa con đường thứ hai tới root bridge thông qua một port trên switch B Cing tuong tu nhu vay, bridge
ảo đó có đường đi từ C đến D Điều này dẫn đến switch D khóa port
của nó
CST ¬
[pt
Hinh 1-8 — Internal Spanning Tree
1.2.2.3 Multiple Spanning Tree Instance (MSTI):
MSTI chi ton tại bên trong một MST Region và không bao giờ tương tác cũng như gởi BPDU ra bên ngoài MST Region chứa nó Chỉ có IST
“đại diện” cho toàn bộ MST Region thực hiện điều này
Trang 27Chuong | GIỚI Thiệu
Không giống như mạng chạy CST, trong MST Region, hai phía của đường truyền có thể gởi và nhận BPDU cùng lúc Các MSTI BPDU không chứa các tham số về thời gian như: hello time, forward delay và max age như thường được tìm thấy trong những CST BPDU Instance duy nhất trong MST Region sử dụng các tham số này là IST MSTI dựa vào IST để truyền đi thông tin của chúng: do đó, chúng không cần các tham số thời gian đó
Một kỹ thuật khác cho phép cân bằng tải giữa cáccollision domain là EtherChannel Đây là một kỹ thuật được nghiên cứu và phát triển bởi Cisco
1.2.3 EtherChannel
EtherChannel cho phép những đường truyền song song nối 2 node trên mạng được STP xem như là một đường logie Các đường truyền được gom lại thành một “bó” (bundle) Nếu một đường truyền trong bundle “chết”, luồng dữ liệu
trên đường truyền đó sẽ được định tuyến lại trên một đường khác trong khoảng
thoi gian vai miligiay
Kỹ thuật EtherChannel cho phép tích hợp 2, 4 hoặc 8 link và có thể cân bằng
tải dựa trên địa chỉ MAC (Layer 2), địa chỉ IP (Layer 3), hoặc giá trị TCP port (Layer 4) Hình 1.9 minh họa quá trình cân bằng tải dựa trên địa chỉ MAC sử dụng kỹ thuật EtherChannel
Cách thức phục hồi lỗi trên một đường truyền (link) trong bundle: khi
phát hiện một link trong bundle bị hư, bộ kiểm soát bó (Ethernet Bundle Controller —- EBC) thông báo cho mạch logic nhận biết địa chỉ mở rộng
(Enhanced Address Recognition Logie — EARL) về link bị hư EARL sẽ xóa
Trang 28Chuong | GIỚI Thiệu
cho phép EBC và EARL xác định lại bằng phần cứng cặp địa chỉ nguồn và
Trên đây là các giải pháp cân bằng tải giữa các collision domain trong một mạng
Còn đối với một mạng diện rộng, tôn tại rất nhiều con đường để đi từ một đường mạng này đến một đường mạng khác, van đề đặt ra là có thể thực hiện cân bằng tải
giữa các broadcast domain hay không để có thể tận dụng được băng thông của các đường truyền nhằm tăng hiệu suất mạng? Các giao thức cũng như các thiết bị mạng hoạt động ở tầng 3 của mô hình OSI hiện nay đều hỗ trợ khả năng cân bằng tải để đảm bảo hiệu suất hoạt động cũng như tính sẵn sàng của mạng Phần cuối của chương này sẽ đề cập đến các phương pháp cân bằng tải được thực hiện ở tầng 3
1.3 Cân băng tải trong mạng gồm nhiều router kết nỗi với nhau
Hiện nay, có rất nhiều giao thức hoạt động tại tầng 3 của mô hình OSI hỗ trợ việc
cân bằng tải trên mạng Dưới đây là một số giao thức điển hình:
Trang 29Chuong | GIỚI Thiệu
1.3.1 Routing Information Protocol (RIP)
RIP là một giao thức định tuyến distance vector Mectric clia các con đường duoc tinh bang “hop count”, nghia 1a s6 router ma một gói tin phải đi qua để đến đích Số hop count tối đa được phép là 15
RIP có khả năng thực hiện cân bằng tải trên các con đường có metric bằng nhau Và số con đường tối đa được phép thực hiện cân băng tải là 6 (giá trị
mặc định là 4) Hiện nay, có 2 phiên bản là RIP version L(RIP - 1) va RIP - 2
Ưu điểm của RIỊP là đơn giản và dễ câu hình Tuy nhiên, đối với các mạng sử
dụng RIP làm giao thức định tuyến, việc lựa chọn đường đi cho các gói tin vả cần bằng tải không được tối ưu, do metri€ được xác định bằng hop count
Thi du, xét so dé mạng như hình minh họa 1.10 RIP xác định metric của các
con đường dựa trên hop count, do đó, các gói tin sẽ được truyền trên đường serial backup có băng thông 19.2 kbps thay vì đường T1 Trường hợp sơ dé mạng như hình vẽ-1.I1, đường backup và đường TI có gia tri metric bang nhau Điều này cho-phép load sharing trên 2 con đường Mặc dù hai con đường có băng thông khác nhau nhưng số gói tin được phân phối trên 2 con đường lại như nhau
Trang 30Chuong | GIỚI Thiệu
Hinh 1-11 — Thi dy 2 vé RIP
1.3.2 Interior Gateway Routing Protocol (GRP) va Enhanced IGRP
(EIGRP)
IGRP va EIGRP déu là các giao thức định tuyến distance vector, được phát triển bởi Cisco Hai giao thức này tự động cân bằng tải trên các con đường có metrie bằng nhau Metric trong IGRP và EIGRP được tính toán dựa trên băng
thông, độ trễ, tải, độ tin cậy, và MTU (mặc định là băng thông và độ trễ)
Hơn nữa, IGRP và EIGRP còn có khả năng thực hiện cân băng tải trên các con đường có metric không bằng nhau Những con đường có metric nằm trong
khoảng được định nghĩa trước, từ metrIc “xấu nhất” có thể chấp nhận được
cho đến metric “tốt nhất” (metrie nhỏ nhất), sẽ được xem xét để tham gia vào
“nhóm” các con đường thực hiện load sharing Chúng cho phép thực hiện cân băng tải tối đa trên 6 con đường (mặc định là 4) Việc cân băng tải có thể dựa theo từng đích đến hoặc dùng kỹ thuật round robin, tùy thuộc vào bộ chuyển mach trong router
Trong khi đường kính mạng cua RIP tối đa chỉ là 15 hop, IGRP/EIGRP cho phép mạng có đường kính lên tới 255 hop Các gói tin trên mạng sử dụng IGRP và EIGRP được phân phối theo tỉ lệ nghịch với metric của những đường
truyền cho phép cân băng tải nên việc cân băng tải được thực hiện tôi ưu
Trang 31Chuong | GIỚI Thiệu
IGRP và EIGRP là những giao thức độc quyền được phát triển bởi Ciseo nên chỉ được áp dụng giới hạn cho những sản phẩm của Cisco
Thí dụ, xét một mạng như hình 1.12 Để đi từ router F đến network A, con
đường đi qua router C và G co metric nho nhất (10) Giả sử muốn thực hiện cân bằng tải giữa các con đường có metrie nằm trong khoảng từ 10 đến 20, giá
trị X sẽ được xác định bằng 2 Kết quả là những con đường có metric nằm
trong khoảng từ 10 đến 10*2 sẽ được đưa vào bảng định tuyến để thực hiện
cân băng tải Đó là 3 con đường: F -> D -> B (15), F“>€Œ =>B (15) và F -> C
-> G (10) Tương ứng với mỗi gói tin được gởi trên hai con đường có metric bằng 15, có 2 gói tin được gởi trên con đường có netrie bằng 10
Trang 32Chuong | GIỚI Thiệu
1.3.3 Open Shortest Path First (OSPF)
OSPF la mot giao thuc dinh tuyén link state, duoc phat trién boi IETF OSPF
sử dụng thuật toán Dijkstra để xây dựng bảng định tuyến và thực hiện cân bằng tải trên các con đường có metric bằng nhau, tối đa là 6 con đường Metric của các con đường trên mạng chạy OSPE được xác định dựa trên “giá thành” (cosf), đó là một phép tính phức tạp dựa trên nhiều yếu tố
Hiện nay, OSPF được sử dụng phố biến trong các mạng diện rộng bởi vì những ưu điểm như: không bị giới hạn về đường kính của mạng, khả năng hội
tụ nhanh, metric được tính toán dựa trên nhiều yếu tố nên việc cân bằng tải được thực hiện tốt hơn so với RIP và mỗi router đều có một sơ đồ về toàn mạng Mặc dù vậy các mạng sử dụng OSPF phuc tap trong thiết kế, cầu hình
và bảo trì
Việc cân bằng tải mạng của các giao thức định tuyến như OSPF, RIP, IGRP, được trình bày ở trên, đều dựa theo I trong 2 phương pháp phân phối gói tin: theo địa chỉ đích.(per destination) hoặc theo từng gói tin (per packet)
1.3.4 Per destination
Phương pháp cân băng tải theo từng đích phân phối tải mạng dựa vào địa chỉ
đích đến của gói tin Giả sử có 2 con đường để đi đến cùng một mạng Khi đó, tất cả gói tin có cùng một địa chỉ đích đến nào đó, thuộc mạng này, có thể “di
chuyển” trên con đường thứ nhất; tất cả gói tin có cùng địa chỉ đích đến thứ hai (khác địa chỉ đầu), cũng thuộc mạng này, có thể “di chuyển” trên con đường thứ hai; tất cả gói tin có cùng đích đến thứ ba có thể lại được truyền đi trên con đường thứ nhất, và cứ thể tiếp tục Phương pháp này còn được gọi là fast switching
Trang 33Chuong | GIỚI Thiệu
ARP nữa
1.3.5 Per packet
Cân băng tải dựa trên từng gói tin nghĩa là một gói tin được gởi đến một đích nào đó trên một đường truyền, gói tin tiếp theo có cùng đích đến được gởi đi trên đường truyền kế tiếp, và cứ thế tiếp tục, giả sử những con đường có giá thành bằng nhau (equal-eost) Nếu các con đường có giá thành không bằng nhau (unequal-cosf), cân bằng tải có thể là: cứ một gói tin được gởi đi trên một đường truyền có giá thành cao thì có 3 gói tin được gởi đi trên đường truyền
có giá thành thấp, hay có thể dựa theo tỉ lệ về giá thành của các đường truyền Phuong phap nay con dugc goi la process switching
Process swifching đơn giản có nghĩa là: đối với tất cả các gói tin, router đều
thực hiện việc tra cứu bảng định tuyến, lua chon interface, va sau do la tim
kiếm thông tin tầng data-link Do mỗi quyết định định tuyến độc lập với mỗi
gói tin, tất cả gói tin đi đến cùng một đích không bị “bắt buộc” sử dụng cùng một interface làm ngõ ra
Trang 34Chuong | GIỚI Thiệu
Tóm lại, chương 1 đã trình bày các giải pháp liên quan đến kỹ thuật cân bằng tải ở các tầng khác nhau của mô hình OSI Để đảm bảo một mạng có thể hoạt động với
hiệu suất cao và có tính chịu lỗi, đòi hỏi nhà quản trị mạng phải biết kết hợp các giải
pháp cân băng tải ở môi tâng cho phù hợp với kiên trúc mạng của mình
Trong chương tiệp theo, các vân đê liên quan đên kiên trúc và các chức năng chung
của một layer 2 switch sẽ được đề cập đền
Trang 35Chuong 2 Tong Quan Vé Layer 2 Switch
Chuong 2
TONG QUAN VE LAYER 2 SWITCH
2.1 Giới thiệu chung
Ethernet switch hoạt động tại tầng 2 (data-link) của mô hình OSI Trong switch,
việc chuyên frame được xử lý bởi thiết bị phan cứng đặc biệt, được gọi là “những
mạch tích hợp ứng dụng chuyên biét” (application-specific intergrated circuits — ASICs)
Công nghé ASIC cho phép mot con chip silicon dugc lập trình nham thuc hién mot
chức năng riêng biệt Công nghệ này cho phép các chức nang được thực hiện với tốc độ nhanh hơn gấp nhiều lần so với tốc độ của một con chip được lập trình băng phần mẻm Do đó, switch xử lý các frame nhanh hơn bridge
Dựa vào công nghệ ASIC, switch cung cấp khả năng mở rộng mạng lên tốc độ gigabit với độ trễ thấp Tương tự như bridge, switch phân đoạn mạng thành nhiều collision domain (mién đụng độ)
Cac layer 2 switch cé 3 chuc nang chinh sau: hoc dia chi (address learning), loc/chuyén tiép g6i tin (filtering/ forwaring) va chong loop (loop advoidance)
Phan tiép theo, muc 2.2, sé trinh bay chi tiết các chức năng chung của mot layer 2
switch
Trang 36Chuong 2 Tong Quan Vé Layer 2 Switch
Hinh 2-1 — Generic Switch
2.2 Các chức năng điển hình của layer 2 switch
Các chức năng switching tương tự như những chức năng được cung cấp bởi Ethernet bridge:
e Mét Ethernet switch “hoc” dia chỉ MAC của các thiết bị được gan vào mỗi
port của nó Những ánh xạ “địa chỉ - port” được lưu trữ trong một hệ cơ sở dtr ligu dia chi MAC (MAC database)
e Khi mot Ethernet switch nhận một frame, né tién hanh tra cứu trong MAC
database để quyết định port nào có thể đi đến máy trạm được xác nhận là
đích đến của frame Nếu địa chỉ đích được tìm thấy, frame được truyền lại
đến duy nhất port đó
e Khi một mạng chuyển mạch (switched-network) có nhiều vòng loop để tạo kha nang du thtra trong mang, mot Ethernet switch sé ngan không cho các loop này làm nghẽn mạng, nhưng vẫn cho phép các con đường dự phòng tồn
tại dựa vao viéc cau hinh Spanning Tree trén switch
2.2.1 Chire nang hoc dia chi
Mot Ethernet switch “hoc” dia chi va hoat d6ng như một bridge trong suốt
Switch duy trì một bảng địa chỉ MAC (MAC address table) dùng để theo dõi
Trang 37Chuong 2 Tong Quan Vé Layer 2 Switch
vi tri của những thiết bị được kết nối vào switch Sau đó, nó sử dụng bảng này
để quyết định những gói tin nào cần được chuyền đến các segment khác Lưu ý rằng vào lúc mới khởi chạy, switch không biết các host trên mạng nằm ở những segment nào như được minh họa ở hình 2.2
MAC address table
segment khac Điều này thực hiện được là nhờ “việc học” của switch về vị trí
các host trén mang Qua trinh forwarding va learning cua switch được mô tả
dưới đây:
e© Khi một switch lan dau được khởi chay, bang dia chi MAC cua switch
hoàn toàn rỗng như hình 1
e_ Với một bảng địa chỉ MAC rỗng, switch không thể đưa ra bất kỳ quyết
định nào về forwarding va filtering cac g6i tin dựa trên địa chỉ đích, do
đó, switch phải chuyển mỗi frame đến tất cả các port ngoại trừ port mà
switch da nhan frame
e Viéc chuyén mot frame dén tat ca cdc port duoc goi la flooding frame
Trang 38Chuong 2 Tong Quan Vé Layer 2 Switch
e Flooding là một phương pháp truyền dữ liệu kém hiệu quả nhất trên switch bởi vì nó tiêu tốn băng thông không cần thiết cho việc truyền frame trên các segment mà frame không cần thiết đến
e Do switch xu ly luồng dữ liệu cho nhiều segment tại cùng một thời
điểm nén switch bé sung một bộ nhớ đệm để nó có thể nhận và truyền các frame một cách độc lập trên mỗi port hay segment
Đề hiệu về quá trinh “hoc” cua switch, xem hinh 2.3 Hinh nay ` 3 minh hoa ` qua
trình truyên dữ liệu giữa 2 trạm làm việc năm trên các segment khác nhau
MAC address table
Hình 2-3 — Các bước học địa chỉ của Switch
Ở hình 2.3 máy tram A voi dia chi MAC la 0260.8c01.1111 muốn gởi đữ liệu đến may tram C voi dia chi MAC là 0260.8c01.2222 Switch nhận được frame nay va thuc hién cac tac vu sau:
Bước 1: frame ban đầu được nhận vao tir mot interface Ethernet vat ly va duoc
lưu vào bộ nhớ đệm tạm thời
Bước 2: do switch không biết interface nào nối nó với máy trạm đích của
frame nên nó bắt buộc phải flood frame đến tất cả các port khác
Trang 39Chuong 2 Tong Quan Vé Layer 2 Switch
Bước 3: khi flood frame tu may tram A, switch hoc dia chi nguồn cua frame va
kết buộc nó với port E0 tạo thành một muc (entry) mdi trong bang dia chi MAC
Bước 4: một entry trong bảng địa chỉ MAC được cache Néu entry nay không
được “làm tươi” bởi một frame mới đi qua switch trong một khoảng thời gian giới hạn, entry này sẽ bị loại bỏ khỏi bảng địa chỉ MÁC
MAC address table
E0: 0260.8c01.1111 E3: 0260.8c01.4444
Trang 40Chuong 2 Tong Quan Vé Layer 2 Switch
Bước 3: khi phan mềm xử lý thông báo không có ánh xạ “port-địa chỉ MAC”
nào tồn tại cho địa chỉ đích nay, frame dugc flood đến tất cả các port ngoại trừ port mà từ đó frame được nhận
Bước 4: khi máy trạm C gởi ngược trở về máy trạm A, switch cũng học được
dia chi MAC cua may tram C, tai port E2
Bước 5: do tất cả các máy trạm đều gởi ffame dữ liệu trong khoảng thời gian
sống của các entry trong bảng địa chỉ MAC, nên một bảng địa chỉ MAC day du vé các máy trạm được xây dựng Những entry nay, sau
đó, được sử dụng cho việc đưa ra các quyết dinh forwarding va
filtering thong minh
2.2.2 Quyết định forward/filter
Khi switch nhận một frame, quá trình đưa ra quyết định diễn ra như sau:
MAC address table
E0: 0260.8c01.1111
| E2: 0260.8c01.2222|
E1: 0260.8c01.3333 E3: 0260.8c01.4444