PDA

View Full Version : Unequal Cost Path Load Balancing in IGRP & EIGRP



Fugarcar
11-09-2003, 02:58 PM
Hi all

Đây là 1 câu hỏi trong *******, câu trả lời là E nhưng tôi thấy chưa rõ ràng lắm.các bạn có y kiến gì về câu hỏi này



There are five paths from router TK to a given destination. The local EIGRP metrics (on router TK) for
these paths are as follows:

Local

----------------------------
Path 1: 1500
Path 2: 1500
Path 3: 2000
Path 4: 4000
Path 5: 4000
Which variance 3 configured on Router TK, which paths are included in TK’s routing table to get the
destination?
A. path 1, 2, and 4
B. path 1, 2, and 3
C. path 1, 2, and 5
D. path 1, 2, 4, and 5
E. path 1, 2, 3, 4, and 5

dangquangminh
11-09-2003, 04:03 PM
Fugacar,

Ở trạng thái bình thường, router chỉ chọn route nào có metric là thấp nhất.

Ví dụ: để đến network 10.0.0.0 có ba đường đi có metric lần lượt là 1500, 2000, 4000.
Khi đó, route có metric là 1500 sẽ được chọn do có metric thấp nhất.

Nếu, để đến network 10.0.0.0 có thêm một đường đi nào đó có metric là là 1500, đường đi đó cũng sẽ được cập nhật vào bảng routing-table. Để đến network 10.0.0.0 trong trường hợp này như vậy là có thể có hai route. Trạng thái này gọi là load-balancing. trong trạng thái load-balancing nêu trên, metric của hai route phải bằng nhau nên còn có một tên gọi khác là equal-metric load-balancing.

Bây giờ, giả sử Fugacar muốn vẫn dùng các routes có metric cao hơn giá trị metric tốt nhất. Nói cách khác, bạn muốn chia tải trên các routes có metric cao hơn (kém hơn), bạn sẽ phải dùng đến un-equal load-balancing.

Các routing protocol như IGRP/EIGRP có hỗ trợ un-equal cost load-balancing.

Để cấu hình cơ chế này, bạn dùng lệnh:

Router(config-router)variance [x 1-128]

trong đó x được tính là hệ số nhân của metric tốt nhất đối với metric xấu nhất (cao nhất).

Quay trở lại ví dụ ở đầu, để dùng luôn route có metric là 4000, hệ số x xủa bạn phải là:

4000/1500 ~ 3

và lệnh bạn dùng sẽ là variance 3

Khi bạn dùng variance 3, tất cả các routes có metric từ 1500 đến 3x1500 sẽ được cập nhật vào bảng routes.

Nếu bạn dùng lệnh #variance 6, tất cả các routes từ khoảng 1500 đến 9000 sẽ được cập nhật vào bảng routing-tables.

Bây giờ quay trở lại câu hỏi của bạn, nếu bạn hiểu những gì được trình bày ở trên, đáp án của câu hỏi sẽ là...........

Thân mến,
Minh

TCP/IP
11-09-2003, 04:19 PM
hi anh Minh!

Nhưng ở trạng thái bình thường default, đối với giao thức EIGRP trong routing table chỉ chứa maximum là 4 routes cho the same destination. EIGRP hỗ trợ tối đa 6 routes cho the same destination (cho cả unequal load balancing or equal load balancing). Nhân đây em cũng có một thắc mắc là khi ta set giá trị variance do vậy tạo được nhiều hơn 6 routes thì sẽ bỏ routes nào. Giả sử có 8 routes thoả mãn variance x best metric, nhưng trong đó có 4 routes cùng metric thì lúc này Router sẽ dựa vào paramaters nào để loại bỏ đi 2 routes.
Mong được anh chỉ giáo thêm. :lol:

thân chào!

dangquangminh
16-09-2003, 12:06 PM
TCP/IP:

Nếu có nhiều routes nằm trong range hợp lệ, những routes đó sẽ được cập nhật vào bảng routing table. Tuy nhiên, có một điều cần chú ý là chỉ những feasible distance successor mới được load-balacing.

Vậy, trong câu hỏi của bạn, những route nào không phải là feasible successor thì sẽ không được load-balancing.

Chúc thành công,

TCP/IP
16-09-2003, 12:41 PM
chào anh Minh!

Ở đây 8 routes của này đều là feasible successor hết nên được xét để load-balancing. Vấn đề ở đây là EIGRP chỉ support tối đa là 6 routes thôi. Có nghĩa là EIGRP chỉ cập nhật tối đa 6 routes đến cùng destination vào trong một Routing table. Điều này em chỉ đọc lý thuyết, phải chăng trên Lab thực EIGRP cập nhật tất cả các routes trong range hợp lệ? Nếu trên Lab thực sự như vậy thì mong anh confirm giúp em nhé.

chân thành cảm ơn anh nhiều.

cvo15303
18-09-2003, 03:35 PM
:P Ah!Cho e hỏi vài điều nhe
1.Như thế nào là 1 feasible successor route
2.Nếu là load-balancing,thì chỉ có 2 route nên dễ phân chia,1 packet theo route này,1 theo route còn lại.Nhưng trong trường hợp load-sharing nhiều route như các sưhuynh vừa nêu,số packet sẽ được phân chia cho mỗi route như thế nào.
3.Có phải là ta khôngthể áp dụng load-sharing đốivới các TCP traffic không?
Đây là những thắc mắc từ lâu của e đấy,mong nhận được chỉdẫn
Mến
"Người đi trước rước ngườiđi sau"
:oops:

dangquangminh
21-09-2003, 01:55 PM
1.Như thế nào là 1 feasible successor route

- EIGRP hoạt động dựa trên ba bảng database:
• bảng routing-table
• bảng topology
• bảng neighbor

Bảng routing-table là nơi chứa các đường đi tốt nhất. Bảng topology là nơi chứa các đường đi có thể đến một network nào đó. Bảng neighbor lưu thông tin về các routers lận cận.

Feasible successor route là các route được lưu trong bảng topology. Theo một nghĩa bình dân, đây là nơi chứa các route dự bị cho route tốt nhất. Khi đường đi tốt nhất bị down, router sẽ tìm kiếm đường đi dự bị từ bảng topology này.


2.Nếu là load-balancing,thì chỉ có 2 route nên dễ phân chia,1 packet theo route này,1 theo route còn lại.Nhưng trong trường hợp load-sharing nhiều route như các sưhuynh vừa nêu,số packet sẽ được phân chia cho mỗi route như thế nào:

Để có thể qui định cách thức load-sharing cho nhiều routes, ta có thể dùng lệnh trong router-mod :

#traffic-share

Ở chế độ mặc định, traffic sẽ được phân phối tỉ lệ với metric:
ví dụ: nếu variance được đặt bằng 3, routes tốt nhất sẽ phải chịu traffic nhiều gấp 3 lần routes xấu nhất.

Để một routes được tham gia vào quá trình unequal-load sharing, cần thêm điều kiện sau đây phải thõa mãn:

+ Nếu thêm routes này vào thì không được vượt quá số routes tối đa đã đợc định nghĩa bằng maximum-path

Do đó, trong câu hỏi của bạn TCP/IP, các routes nào vượt qua maximum-paths 6 sẽ không được tham gia vào quá trình load-sharing. Câu hỏi kế tiếp là nếu vậy thì những routes nào sẽ bị loại bỏ, mình sẽ nghiên cứu chi tiết và trả lời cho bạnTCP/IP.

3.Có phải là ta khôngthể áp dụng load-sharing đốivới các TCP traffic không?

PAT or NAT?

themask
14-10-2003, 04:14 PM
->>>
Về cơ bản, cân bằng tải tên router là khả năng phân phối các gói tin trên các port có tuyến kết nối đến một địa chỉ đích nào đó. Điều này tối ưu việc sử dụng băng thông trên các tuyến kết nối khác nhau để tránh trường hợp lưu lượng thông tin ( traffic) làm quá tải ( overload) một tuyến truyền dẫn trong khi tuyến khác lại ở trạng thái rỗi. Tùy theo loại thiết bị và giao thức mà Router có thể thực hiện các cân bằng tải theo những giải thuật khác nhau nhưng nhìn chung chỉ có 2 loại : cân bằng tải trên các tuyến cùng khoảng cách , còn gọi là metric, ( equal cost load balancing) và cân bằng tải trên các tuyến khác metric. ( unequal load balancing).

Trong phạm vi giới hạn, bài viết chỉ đề cập đến cách thức Router chạy EGIRP thực hiện cân bằng tải trên các tuyến kết nối không cùng metric ( unequal load balancing).

Cân bằng tải trong EIGRP.

Hầu như tất cả các giao thức định tuyến ( Routing Protocol) đều hỗ trợ cân khả năng cân bằng tải trên các tuyến có khoảng cách bằng nhau. Thêm vào đó, bằng cách nhân thêm hệ số ( gọi là biến variance) vào các metric, IGRP và EIGRP còn có thể thực hiện cân bằng tải trên các tuyến kết nối khác nhau.

Lệnh variance đưa ra một tham số n ( user defined, ranging from 1 to 128) mà theo đó router sẽ cân bằng tải trên tất cả các tuyến có metric nhở hơn tích của tuyến có metric nhỏ nhất và n.

Giả sử có x1, x2, x3… tuyến từ A đến B, mỗi tuyến có metric là m1, m2, m3… thì các tuyến mà router sẽ thực hiện cân bằng tải phải có metric nhỏ hơn hoặc bằng

Metric of Eligible Load Balancing Links < Min (m1, m2, m3…) * n

Một điểm cấn lưu ý là khi đó việc phân phối dữ liệu qua các tuyến kết nối sẽ được thực hiện theo tỉ lệ tương xứng với metric của nó.

Một ví dụ minh họa như sau:

http://www.cisco.com/warp/public/103/19a.gif

Trong sơ đồ trên, có 3 tuyến đến mạng X với metric như sau:
(hop-hop-hop/metric)

- E-B-A/30
- E-C-A/20
- E-D-A/45

Theo thường lệ, Router E sẽ chọn đường thứ 2, E-C-A/20, để chuyển các các gói tin đến mạng X, tuy vậy, bằng cách dùng lệnh variance, Rouer E cũng có thể thực hiện cân bằng tải qua tuyến E-B-A.

Cấu hình như sau:

router eigrp 1
network x.x.x.x
variance 2

Trong trường hợp này n bằng 2, metric nhỏ nhất của các tuyến Min (m1, m2, m3…) = 20 nên theo công thức trên Min (m1, m2, m3…) * n = 40, vậy 2 tuyến có thể cân bằng tải là E-C-A/20 và E-B-A/30.

Vậy nếu chọn n bằng 3, liệu Router có phân phối tải trên cả 3 tuyến hay không?

Câu trả lời là không với EIGRP do E-D-A/45 không phải là tuyến kế thích hợp (feasible successor ) sau tuyến chính E-C-A (successor). Phần này sẽ được giải thích chi tiết hơn trong các bài viết khác về EIGRP.

Sau khi đã chọn được các tuyến thích hợp Router sẽ phân phối tải dựa theo lệnh traffic-share.

Xét cấu hình sau:

router eigrp 1
network x.x.x.x
variance 2
traffic-share balanced
!... cân bằng tải trên các tuyến dựa theo tỉ lệ metric của chúng

Với đường E-C-A: 30/20 =3/2 =1
Với đường E-B-A: 30/30 =1

Do các tỉ số này được làm tròn về số nguyên ( integer) nên lúc này tải được cân bằng theo tỉ lệ 1-1 trên cả 2 tuyến.

Bây giờ giả sử, E-B=25 và B-A=15 thì metric tuyến E-B-A sẽ là 40 bằng với Min (m1, m2, m3…) * n = 40 nên sẽ bị loại ra khỏi danh sách các tuyến được phân phối tải. Tăng n lên 3 thì Router sẽ tiếp tục chia tải theo tỉ số 2/1 như sau:

- E-C-A : 40/20=2
- E-B-A: 40/40=1

Vậy cứ 2 gói tin được chuyển qua E-C-A thì lại có 1 gói qua E-B-A.

Trong cấu hình sau, Router chỉ gửi các gói tin qua tuyến nào co metric nhỏ nhất (E-C-A), ngay cả khi có nhiều tuyến khác nằm trong bảng Routing của nó.

router eigrp 1
network x.x.x.x
variance 3
traffic-share min across-interfaces
!... chỉ gửi gói tin qua tuyến có metric nhỏ nhất

Khi EIGRP là bản “Enhanced” của IGRP nên cơ chế và cách cấu hình cân bằng tải là như nhau.
<<<-

1'hpSky
16-10-2003, 07:07 PM
Bạn nào có thể viết một bài về Equal-cost load Balancing được không!!!

tuaninbox
16-10-2003, 11:57 PM
Equal-cost load Balancing là cân bằng tải với chi phí các route bằng nhau. Khi một routing protocol có nhiều đường đi đến một network mà có chi phí bằng nhau thì nó sẽ add các đường đi đó vào bảng routing table. Số đường đi tối đa là 6 và mặc định là 4.

Bạn không cần cấu hình gì cả. Router sẽ tự động add các route có chi phí bằng nhau vào bảng routing table.

1'hpSky
17-10-2003, 12:04 PM
cám ơn bạn, mình sẽ nghiên cứu thêm.

admin
22-10-2003, 04:46 PM
Thông:

bạn xem thêm các link này:

http://vnpro.org/forum/viewtopic.php?t=2000
http://vnpro.org/forum/viewtopic.php?t=1439

Trong các thread trên, Mr Minh vẫn chưa giải quyết được một số vấn đề còn lại, bao gồm: nếu có nhiều feasible routes thì những routes nào sẽ bị loại bỏ.

Thân mời các bạn tiếp tục thảo luận.

Cám ơn,

themask
22-10-2003, 04:58 PM
Hi,

Đúng như Admin nói, còn vấn đề như sau, xin mọi người giải giúp

Trong bài

http://vnpro.org/forum/viewtopic.php?t=2000

Đoạn

..."Câu trả lời là không với EIGRP do E-D-A/45 không phải là tuyến kế thích hợp (feasible successor ) sau tuyến chính E-C-A (successor). Phần này sẽ được giải thích chi tiết hơn trong các bài viết khác về EIGRP"...

bestirboy
30-12-2003, 12:20 PM
Cho mình hỏi thêm là nếu muốn cân bằng theo phần % giữa các link theo ý mình thì phải làm sao đây?

sinhvienngheo
30-12-2003, 04:08 PM
bestirboy

lúc đó có thể cấu hình các link sao cho metric của chúng tuân theo tỉ lệ do boy định nghĩa.

chúc vui vẻ,

bestirboy
30-12-2003, 04:36 PM
Nhưng với những routing protocol phức tạp hay thêm những tham số trong việc tính metric của protocol đó thì việc xác đnh và set tham số là 1 điều khá phức tạp. Liệu còn cách nào khác???

cccp
08-01-2004, 01:22 AM
To bestirboy,

Nếu bạn muốn chủ động phân tải theo tính toán riêng của mình, bạn chỉ cần thay đổi cách tính metric làm sao chỉ có một tham số duy nhất, sau đó cấu hình tham số đó theo ý muốn,
Ví dụ chỉ tính đến K1, tức là metric chỉ phụ thuộc vào Bandwidth
Nhưng cách này không phải là cách hay, vì một trong những điểm mạnh của EIGRP chính là cách tinh metric chính xác dựa trên nhiều tham số (phức tạp).

bestirboy
08-01-2004, 07:44 AM
Thanks SVN và cccp nhiều. Boy sẽ dựa vào đó để đọc thêm về phần Routing này, nếu có thiếu sót, rất mong sự chỉ bảo của mọi người

silverhair
29-01-2004, 11:34 PM
Cho mình hỏi các thông số K1 K3 hay dùng là Band va delay, mình có thể tính toán tùy theo đinh nghĩa . Nhưng làm sao đo được nó là bao nhiêu

admin
30-01-2004, 03:22 PM
Hi,

K1 hay K3 thường có giá trị là 1.

thân,

kokichi81
22-06-2004, 10:46 AM
Một router được kết nối tới một mạng bằng ba đường có metric là:500,700,2000.Định tuyến bằng EiGRP.
Variance =5;
Thì các đường được chia tải như thế nào?

tuaninbox
22-06-2004, 11:53 AM
Hi,
Bạn đọc link sau nhé:
http://cisco.com/en/US/tech/tk365/tk207/technologies_tech_note09186a008009437d.shtml

dangquangminh
22-06-2004, 08:21 PM
xem một thảo luận trước đây. Đây là một vấn đề đã được giải quyết.

http://www.vnpro.org/forum/viewtopic.php?t=2000&sid=3878c7a99adc3ccf34be06f6098ff9c6

cám ơn,

act
01-07-2005, 04:34 PM
còn vấn đề chưa giải quyết

Do đó, trong câu hỏi của bạn TCP/IP, các routes nào vượt qua maximum-paths 6 sẽ không được tham gia vào quá trình load-sharing. Câu hỏi kế tiếp là nếu vậy thì những routes nào sẽ bị loại bỏ, mình sẽ nghiên cứu chi tiết và trả lời cho bạnTCP/IP.

kimlong
16-10-2005, 04:39 PM
trong bảng neighbor của EIGRP có chỉ ra khoảng thời gian mà neighbor (và các routes) của neighbor được thiết lập. 6 routes vào sớm nhất sẽ được cập nhật vào bảng định tuyến.

userdat
11-05-2007, 10:02 AM
mình đọc tài liệu về stub trong eigrp vẫn chưa hiêur rõ lắm nên mong các sư huynh chỉ dùm mình về quá trình stub trogn eigrp

dangquangminh
11-05-2007, 02:58 PM
hi userdat

Trong EIGRP, có vài loại gói tin (của EIGRP) mà khi một router gửi nó đi, router cần phải nhận được ACK. Nói cách khác, kiểu gởi của các gói tin EIGRP này là kiểu tin cậy (reliable).

Một trong những loại gói tin sử dụng kiểu truyền reliable là gói tin update, gói tin query. Khi nào gói tin query được một router EIGRP sử dụng? Khi có một route nào đó bị down. Nếu trong bảng topology của EIGRP không có sẵn route dự phòng (mà bạn userdat còn biết đến với tên gọi là feasible successor) thì router sẽ gửi ra các gói tin truy vấn.

Khi có rất nhiều gói tin query về một route sẽ được gửi ra, một điều phiền toái là router phải chờ thông điệp xác nhận ACK từ tất cả các router láng giềng gửi về cho từng query. Điều gì sẽ xảy ra nếu gói tin ACK không được gửi về? Lúc đó router của bạn nằm trong trạng thái gọi là stuck in active.

Để hạn chế vấn đề đó, có một tùy chọn cấu hình của EIGRP gọi là stub. Chức năng này cũng giống như là chức năng stub của OSPF.

Khi một router được cấu hình stub, router EIGRP sẽ không chấp nhận các gói tin query. Hoặc, bạn userdat cũng có thể diễn tả rằng, router láng giềng không thể nào gửi query về một stub router.

Ví dụ dưới đây cũng mô phỏng R5 được cấu hình như một EIGRP stub router. R5 thông báo chính nó là stub thông qua các gói EIGRP Hello. Kết quả là, R2 sẽ không gửi thông điệp truy vấn đến R5, giới hạn tầm vực truy vấn. Lệnh eigrp stub có vài tuỳ chọn, các tùy chọn mặc định là connected và summary. Chú ý rằng chỉ cần nhập vào lệnh eigrp stub, IOS sẽ tự động thêm vào hai tùy chọn connected và summary. Bảng dưới đây liệt kê các tuỳ chọn của lệnh EIGRP stub và giải thích cơ chế bên trong của nó.

Tùy chọn trong câu lệnh:

Connected: Quảng bá những route kết nối trực tiếp nhưng chỉ cho những cổng có địa chỉ đúng bằng với địa chỉ trong câu lệnh network.
Summary :Router được phép quảng bá những route tự động summary hay những route được summary thủ công.
Static: Router quảng bá những static route, giả sử rằng lệnh redistribute static được cấu hình.
Redistributed: Quảng bá những redistributed route, với giả sử rằng router có cấu hình redistribution.
Receive-only: Không quảng bá bất cứ route nào. Lệnh này không được dùng với bất kỳ tùy chọn nào.

collision
23-01-2008, 06:29 PM
Equal-cost load Balancing là cân bằng tải với chi phí các route bằng nhau. Khi một routing protocol có nhiều đường đi đến một network mà có chi phí bằng nhau thì nó sẽ add các đường đi đó vào bảng routing table. Số đường đi tối đa là 6 và mặc định là 4.

Bạn không cần cấu hình gì cả. Router sẽ tự động add các route có chi phí bằng nhau vào bảng routing table.

Tại sao trong bảng routing table có 2 routes, cùng metric, nhưng khi ping thử thì ko thấy quá trình load balancing :106:. 5 gói tin ping cứ theo 1 cổng mà đi mới chuối chứ. em dùng lệnh
#debug ip packet
sau đó ping. có pác nào giải thích hộ em cái :105:. em dùng dynamips router 7200

collision
23-01-2008, 06:47 PM
theo em hiểu thì con router nào cấu hình stub. thì khi network nào nối trực tiếp với stub router , mà ở network đó ko có router nào khác (ví dụ cổng fa0/0 của stub router) . khi network này down:-SS.

thì stub router sẽ ko gửi gói query yêu cầu về mạng đó ra cho các router khác . vì mạng đó chỉ có mình nó kết nối . do đó nó có thể phản ứng lại sự thay đổi này ngay lập tức mà ko phải đợi gói query gửi đi khắp nơi.

ko bít như thế có đúng ko:-/ . mong pác giúp đỡ:-?

tranmyphuc
23-01-2008, 08:38 PM
Tại sao trong bảng routing table có 2 routes, cùng metric, nhưng khi ping thử thì ko thấy quá trình load balancing :106:. 5 gói tin ping cứ theo 1 cổng mà đi mới chuối chứ. em dùng lệnh
#debug ip packet
sau đó ping. có pác nào giải thích hộ em cái :105:. em dùng dynamips router 7200

Bạn dùng thử câu lệnh
debug ip eirgp [ad number] xem
Nếu vẫn tình trạng trên , bạn có thể post thử cấu hình cũng như show ip route lên đây được ko?

Chúc bạn vui !!!

collision
25-02-2008, 09:31 PM
sau khi làm lab mình đã ngộ ra cái thằng eigrp stub, :106:thực ra nó rất đơn giản. nếu con nào cấu hình eigrp stub thì nó sẽ chỉ quảng bá các route connected và summary route, còn các route khác mà nó học được thông qua eigrp sẽ ko quảng bá cho neighbor khác:)

khampha02
23-03-2009, 03:51 PM
Một ví dụ minh họa như sau:



Trong sơ đồ trên, có 3 tuyến đến mạng X với metric như sau:
(hop-hop-hop/metric)

- E-B-A/30
- E-C-A/20
- E-D-A/45

Theo thường lệ, Router E sẽ chọn đường thứ 2, E-C-A/20, để chuyển các các gói tin đến mạng X, tuy vậy, bằng cách dùng lệnh variance, Rouer E cũng có thể thực hiện cân bằng tải qua tuyến E-B-A.

Cấu hình như sau:

router eigrp 1
network x.x.x.x
variance 2

Trong trường hợp này n bằng 2, metric nhỏ nhất của các tuyến Min (m1, m2, m3…) = 20 nên theo công thức trên Min (m1, m2, m3…) * n = 40, vậy 2 tuyến có thể cân bằng tải là E-C-A/20 và E-B-A/30.

Vậy nếu chọn n bằng 3, liệu Router có phân phối tải trên cả 3 tuyến hay không?

Câu trả lời là không với EIGRP do E-D-A/45 không phải là tuyến kế thích hợp (feasible successor ) sau tuyến chính E-C-A (successor). Phần này sẽ được giải thích chi tiết hơn trong các bài viết khác về EIGRP.

Bạn nào giải thích hộ mình đoạn này với ? "EIGRP do E-D-A/45 không phải là tuyến kế thích hợp (feasible successor ) sau tuyến chính E-C-A (successor)."

hubt_vinh
04-05-2010, 12:02 PM
->>>
Về cơ bản, cân bằng tải tên router là khả năng phân phối các gói tin trên các port có tuyến kết nối đến một địa chỉ đích nào đó. Điều này tối ưu việc sử dụng băng thông trên các tuyến kết nối khác nhau để tránh trường hợp lưu lượng thông tin ( traffic) làm quá tải ( overload) một tuyến truyền dẫn trong khi tuyến khác lại ở trạng thái rỗi. Tùy theo loại thiết bị và giao thức mà Router có thể thực hiện các cân bằng tải theo những giải thuật khác nhau nhưng nhìn chung chỉ có 2 loại : cân bằng tải trên các tuyến cùng khoảng cách , còn gọi là metric, ( equal cost load balancing) và cân bằng tải trên các tuyến khác metric. ( unequal load balancing).

Trong phạm vi giới hạn, bài viết chỉ đề cập đến cách thức Router chạy EGIRP thực hiện cân bằng tải trên các tuyến kết nối không cùng metric ( unequal load balancing).

Cân bằng tải trong EIGRP.

Hầu như tất cả các giao thức định tuyến ( Routing Protocol) đều hỗ trợ cân khả năng cân bằng tải trên các tuyến có khoảng cách bằng nhau. Thêm vào đó, bằng cách nhân thêm hệ số ( gọi là biến variance) vào các metric, IGRP và EIGRP còn có thể thực hiện cân bằng tải trên các tuyến kết nối khác nhau.

Lệnh variance đưa ra một tham số n ( user defined, ranging from 1 to 128) mà theo đó router sẽ cân bằng tải trên tất cả các tuyến có metric nhở hơn tích của tuyến có metric nhỏ nhất và n.

Giả sử có x1, x2, x3… tuyến từ A đến B, mỗi tuyến có metric là m1, m2, m3… thì các tuyến mà router sẽ thực hiện cân bằng tải phải có metric nhỏ hơn hoặc bằng

Metric of Eligible Load Balancing Links < Min (m1, m2, m3…) * n

Một điểm cấn lưu ý là khi đó việc phân phối dữ liệu qua các tuyến kết nối sẽ được thực hiện theo tỉ lệ tương xứng với metric của nó.

Một ví dụ minh họa như sau:

http://www.cisco.com/warp/public/103/19a.gif

Trong sơ đồ trên, có 3 tuyến đến mạng X với metric như sau:
(hop-hop-hop/metric)

- E-B-A/30
- E-C-A/20
- E-D-A/45

Theo thường lệ, Router E sẽ chọn đường thứ 2, E-C-A/20, để chuyển các các gói tin đến mạng X, tuy vậy, bằng cách dùng lệnh variance, Rouer E cũng có thể thực hiện cân bằng tải qua tuyến E-B-A.

Cấu hình như sau:

router eigrp 1
network x.x.x.x
variance 2

Trong trường hợp này n bằng 2, metric nhỏ nhất của các tuyến Min (m1, m2, m3…) = 20 nên theo công thức trên Min (m1, m2, m3…) * n = 40, vậy 2 tuyến có thể cân bằng tải là E-C-A/20 và E-B-A/30.

Vậy nếu chọn n bằng 3, liệu Router có phân phối tải trên cả 3 tuyến hay không?

Câu trả lời là không với EIGRP do E-D-A/45 không phải là tuyến kế thích hợp (feasible successor ) sau tuyến chính E-C-A (successor). Phần này sẽ được giải thích chi tiết hơn trong các bài viết khác về EIGRP.

Sau khi đã chọn được các tuyến thích hợp Router sẽ phân phối tải dựa theo lệnh traffic-share.

Xét cấu hình sau:

router eigrp 1
network x.x.x.x
variance 2
traffic-share balanced
!... cân bằng tải trên các tuyến dựa theo tỉ lệ metric của chúng

Với đường E-C-A: 30/20 =3/2 =1
Với đường E-B-A: 30/30 =1

Do các tỉ số này được làm tròn về số nguyên ( integer) nên lúc này tải được cân bằng theo tỉ lệ 1-1 trên cả 2 tuyến.

Bây giờ giả sử, E-B=25 và B-A=15 thì metric tuyến E-B-A sẽ là 40 bằng với Min (m1, m2, m3…) * n = 40 nên sẽ bị loại ra khỏi danh sách các tuyến được phân phối tải. Tăng n lên 3 thì Router sẽ tiếp tục chia tải theo tỉ số 2/1 như sau:

- E-C-A : 40/20=2
- E-B-A: 40/40=1

Vậy cứ 2 gói tin được chuyển qua E-C-A thì lại có 1 gói qua E-B-A.

Trong cấu hình sau, Router chỉ gửi các gói tin qua tuyến nào co metric nhỏ nhất (E-C-A), ngay cả khi có nhiều tuyến khác nằm trong bảng Routing của nó.

router eigrp 1
network x.x.x.x
variance 3
traffic-share min across-interfaces
!... chỉ gửi gói tin qua tuyến có metric nhỏ nhất

Khi EIGRP là bản “Enhanced” của IGRP nên cơ chế và cách cấu hình cân bằng tải là như nhau.
<<<-
để mình giải thích nốt ý của bạn themask (http://vnpro.org/forum/member.php?u=358)
theo mô hình trên thì router E sẽ có 3 RD ( report distance - khoảng cách từ thằng neighbor tới đích mà router E nhận được)
+ RD (E-B-A) : 10
+ RD (E-C-A) : 10
+ RD (E-D-A) : 25
và FD ( feasible distance - khoảng cách ngắn nhất tới đích ) ở đây sẽ là 20 (E-C-A)
vì RD luôn phải nhỏ hơn FD mà RD ( E-D-A ) > FD ----> tuyến này sẽ không được lựa chọn