Lab 2-1: RIP EQUAL-COST LOAD BALANCING
Mô tả
Bài thực hành này mô tả cách hoạt động cân bằng tải với chi phí bằng nhau của RIP, xem xét cách thức chuyển mạch process switching và fast-switching. RouterB có hai đường tới mạng 10.0.0.0. Dùng lệnh debug để kiểm tra gói trên các đường tới mạng 10.0.0.0 ở trường hợp cân bằng tải trên từng gói (per packet) và trên từng đích tới (per destination).
Cấu hình
RouterA
!
hostname RouterA
!
!
ip subnet-zero
!
!
interface Ethernet0/0
ip address 10.0.0.1 255.255.255.0
!
interface Serial0/0
ip address 192.168.1.2 255.255.255.0
!
router rip
network 10.0.0.0
network 192.168.1.0
!
ip classless
!
line con 0
line aux 0
line vty 0 4
!
end
RouterB
!
hostname RouterB
!
ip subnet-zero
!
interface FastEthernet0/0
ip address 192.168.3.1 255.255.255.0
!
interface Serial0/0
ip address 192.168.1.1 255.255.255.0
clockrate 56000
!
interface Serial0/1
ip address 192.168.2.1 255.255.255.0
clockrate 56000
!
router rip
network 192.168.1.0
network 192.168.2.0
network 192.168.3.0
!
ip classless
!
line con 0
line aux 0
line vty 0 4
!
end
RouterC
!
hostname RouterC
!
ip subnet-zero
!
!
interface FastEthernet0/0
ip address 10.0.0.2 255.255.255.0
!
interface Serial0/0
ip address 192.168.2.2 255.255.255.0
!
router rip
network 10.0.0.0
network 192.168.2.0
!
ip classless
!
line con 0
line aux 0
line vty 0 4
!
end
Thực hiện
1. Ban đầu cấu hình chạy RIP trên tất cả các router.
RouterA(config)#router rip
RouterA(config-router)#network 192.168.1.0
RouterA(config-router)#network 10.0.0.0
Kiểm tra bảng định tuyến trên RouterB, RouterB có hai đường tới mạng 10.0.0.0
RouterB#sh ip route
Gateway of last resort is not set
R 10.0.0.0/8 [120/1] via 192.168.1.2, 00:00:17, Serial0/0
[120/1] via 192.168.2.2, 00:00:13, Serial0/1
C 192.168.1.0/24 is directly connected, Serial0/0
C 192.168.2.0/24 is directly connected, Serial0/1
C 192.168.3.0/24 is directly connected, FastEthernet0/0
RIP sẽ tự động cân bằng tải trên các route có chi phí bằng nhau (cả hai route có metric là 1).
Có ba tiêu chí dưới đây để ra quyết định về định tuyến:
Metric: các giao thức định tuyến dùng metric để tính toán đường đi nào là đường đi tốt nhất về một hệ thống mạng ở xa. Nhiều giao thức định tuyến không dễ dàng chia sẽ thông tin bởi vì các metric của các giao thức đó hoàn toàn khác nhau
AD: Nếu có nhiều hơn một giao thức định tuyến đang chạy trên router, giá trị AD được dùng để chọn lựa giao thức nào sẽ cập nhật bảng định tuyến. Giá trị này sẽ chỉ ra giao thức nào là nguồn tin cậy nhất.
Chiều dài prefix: quá trình chuyển tiếp gói sẽ dùng route khi số subnet match vớI địa chỉ đích. Nó sẽ chọn lựa đường đi nào có chiều dài prefix lớn nhất mà match vớI phần địa chỉ mạng.
2. Để RouterB cân bằng tải dựa trên từng gói (per packet) cả hai cổng giao tiếp S0/0 và S0/1 phải dùng kiểu chuyển mạch process switching. Process switching yêu cầu router xem xét mạng cần tới trong mỗi gói đối chiếu với bảng định tuyến, để chọn đường phù hợp. Trái lại, fast switching chỉ thực hiện xem bảng định tuyến đối với gói đầu tiên, router sau đó lưu kết quả trong bộ nhớ cache tốc độ cao và dùng thông tin trong cache để chuyển tiếp các gói sau tới đích. Fast switching là thiết lập mặc định.
Để bật process switching trên các cổng giao tiếp serial dùng lệnh sau
RouterB(congig)# int S0/0
RouterB(config-if)#no ip route-cache
RouterB(config)# int s0/1
RouterB(config-if)#no ip route-cache
Kiểm tra lại fast switching đã tắt trên cổng giao tiếp dùng lệnh show ip interface
RouterB#show ip interface s0/0
Serial0 is up, line protocol is up
Internet address is 192.168.1.1 255.255.255.0
Broadcast address is 255.255.255.255
Address determined by non-volatile memory
MTU is 1500 bytes
Helper address is not set
Directed broadcast forwarding is enabled
Outgoing access list is not set
Inbound access list is not set
Proxy ARP is enabled
Security level is default
Split horizon is enabled
ICMP redirects are always sent
ICMP unreachables are always sent
ICMP mask replies are never sent
IP fast switching is disabled
...
3. Bởi vì có hai route tới đích trong bảng định tuyến, một nửa số gói sẽ gởi trên một đường, và một nửa gởi trên đường kia. Dùng lệnh debug ip packet để xem gói IP gởi nhận trên router
RouterB#debug ip packet
Từ workstation ping 10.0.0.1. Xem thông báo xuất hiện, các gói IP gởi cân bằng trên hai đường để ngưng debug thực hiện lệnh undebug all (hay u all ).
01:42:24: IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0),
g=192.168.1.2, len 60, forward
01:42:24: IP: s=10.0.0.1 (Serial0/0), d=192.168.3.2 (FastEthernet0/0),
g=192.168.3.2, len 60, forward
01:42:25: IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/1),
g=192.168.2.2, len 60, forward
01:42:26: IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0),
g=192.168.1.2, len 60, forward
01:42:26: IP: s=192.168.3.1 (local), d=255.255.255.255 (FastEthernet0/0),
len 92, sending broad/multicast
01:42:26: IP: s=192.168.1.1 (local), d=255.255.255.255 (Serial0/0),
len 72, sending broad/multicast
01:42:26: IP: s=192.168.2.1 (local), d=255.255.255.255 (Serial0/1),
len 72, sending broad/multicast
01:42:27: IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/1),
g=192.168.2.2, len 60, forward
Các thông báo hơi phức tạp do các gói ping request, ping relply, RIP thông tin cập nhật đều xuất hiện. Để lọc những thông tin cần thiết, tạo access-list trên router. Vì chỉ muốn xem các gói ping request tới mạng 10.0.0.0, nên tạo access-list như sau:
RouterB(config)#access-list 101 permit icmp any 10.0.0.0 0.255.255.255
Áp dụng access-list để lọc các thông báo từ lệnh debug:
RouterB#debug ip packet 101
IP packet debugging is on for access list 101
Thực hiện lại lệnh ping to 10.0.0.1 từ workstation, xem kết quả.
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0), g=192.168.1.2,
len 60, forward
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/1), g=192.168.2.2,
len 60, forward
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0), g=192.168.1.2,
len 60, forward
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/1), g=192.168.2.2,
len 60, forward
4. Sau khi kiểm tra cân bằng tải trên từng gói, cấu hình cân bằng tải trên từng đích đến như sau. Cả hai cổng giao tiếp serial của RouterB chuyển sang chế độ fast switching bằng câu lệnh
RouterB(config-if)#ip route-cache
Với fast switching, thông tin thích hợp trong gói đầu tiên của luồng dữ liệu được lưu lại (cache) như vậy CPU không phải xử lý các gói tiếp theo trong luồng dữ liệu. Kiểm tra lại đã bật fast switching bằng lệnh show ip interface. Bảng định tuyến chỉ xem xét một lần trên mỗi đích tới, các gói cùng tới một host đi theo cùng một đường. Router cần phải xem xét bảng định tuyến chỉ với mạng đích khác hay cache hết hiệu lực. Bật debug ip packet 101 trên RouterB, và ping 10.0.0.1 từ workstation. Khi fast switching bật, chỉ xuất hiện một thông báo. Gói được gởi ra cổng giao tiếp S0/0
RouterB#
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0), g=192.168.1.2,
len 60, forward
Tiếp tục, ping 10.0.0.2, gói sẽ được gởi ra cổng giao tiếp S0/1
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.2 (Serial0/1), g=192.168.2.2,
len 60, forward
5. Thử ping địa chỉ 10.0.0.3 và 10.0.0.4 tất nhiên sẽ không có trả lời, dùng lệnh show ip cache để xem nội dung của route cache. Chú ý rằng bảng cache có sẵn 10.0.0.1 và 10.0.0.2 cũng như tất cả các địa chỉ IP trên mạng 10.0.0.0 mà gói ping thực hiện.
RouterB#show ip cache
IP routing cache 5 entries, 848 bytes
14 adds, 9 invalidates, 0 refcounts
Minimum invalidation interval 2 seconds, maximum interval 5 seconds,
quiet interval 3 seconds, threshold 0 requests
Invalidation rate 0 in last second, 0 in last 3 seconds
Last full cache invalidation occurred 01:40:00 ago
Prefix/Length Age Interface Next Hop
10.0.0.1/32 00:00:15 Serial0/0 192.168.1.2
10.0.0.2/32 00:03:19 Serial0/1 192.168.2.2
10.0.0.3/32 00:00:57 Serial0/0 192.168.1.2
10.0.0.4/32 00:00:43 Serial0/1 192.168.2.2
192.168.3.2/32 00:03:37 FastEthernet0/0 192.168.3.2
Mô tả
Bài thực hành này mô tả cách hoạt động cân bằng tải với chi phí bằng nhau của RIP, xem xét cách thức chuyển mạch process switching và fast-switching. RouterB có hai đường tới mạng 10.0.0.0. Dùng lệnh debug để kiểm tra gói trên các đường tới mạng 10.0.0.0 ở trường hợp cân bằng tải trên từng gói (per packet) và trên từng đích tới (per destination).
Cấu hình
RouterA
!
hostname RouterA
!
!
ip subnet-zero
!
!
interface Ethernet0/0
ip address 10.0.0.1 255.255.255.0
!
interface Serial0/0
ip address 192.168.1.2 255.255.255.0
!
router rip
network 10.0.0.0
network 192.168.1.0
!
ip classless
!
line con 0
line aux 0
line vty 0 4
!
end
RouterB
!
hostname RouterB
!
ip subnet-zero
!
interface FastEthernet0/0
ip address 192.168.3.1 255.255.255.0
!
interface Serial0/0
ip address 192.168.1.1 255.255.255.0
clockrate 56000
!
interface Serial0/1
ip address 192.168.2.1 255.255.255.0
clockrate 56000
!
router rip
network 192.168.1.0
network 192.168.2.0
network 192.168.3.0
!
ip classless
!
line con 0
line aux 0
line vty 0 4
!
end
RouterC
!
hostname RouterC
!
ip subnet-zero
!
!
interface FastEthernet0/0
ip address 10.0.0.2 255.255.255.0
!
interface Serial0/0
ip address 192.168.2.2 255.255.255.0
!
router rip
network 10.0.0.0
network 192.168.2.0
!
ip classless
!
line con 0
line aux 0
line vty 0 4
!
end
Thực hiện
1. Ban đầu cấu hình chạy RIP trên tất cả các router.
RouterA(config)#router rip
RouterA(config-router)#network 192.168.1.0
RouterA(config-router)#network 10.0.0.0
Kiểm tra bảng định tuyến trên RouterB, RouterB có hai đường tới mạng 10.0.0.0
RouterB#sh ip route
Gateway of last resort is not set
R 10.0.0.0/8 [120/1] via 192.168.1.2, 00:00:17, Serial0/0
[120/1] via 192.168.2.2, 00:00:13, Serial0/1
C 192.168.1.0/24 is directly connected, Serial0/0
C 192.168.2.0/24 is directly connected, Serial0/1
C 192.168.3.0/24 is directly connected, FastEthernet0/0
RIP sẽ tự động cân bằng tải trên các route có chi phí bằng nhau (cả hai route có metric là 1).
Có ba tiêu chí dưới đây để ra quyết định về định tuyến:
Metric: các giao thức định tuyến dùng metric để tính toán đường đi nào là đường đi tốt nhất về một hệ thống mạng ở xa. Nhiều giao thức định tuyến không dễ dàng chia sẽ thông tin bởi vì các metric của các giao thức đó hoàn toàn khác nhau
AD: Nếu có nhiều hơn một giao thức định tuyến đang chạy trên router, giá trị AD được dùng để chọn lựa giao thức nào sẽ cập nhật bảng định tuyến. Giá trị này sẽ chỉ ra giao thức nào là nguồn tin cậy nhất.
Chiều dài prefix: quá trình chuyển tiếp gói sẽ dùng route khi số subnet match vớI địa chỉ đích. Nó sẽ chọn lựa đường đi nào có chiều dài prefix lớn nhất mà match vớI phần địa chỉ mạng.
2. Để RouterB cân bằng tải dựa trên từng gói (per packet) cả hai cổng giao tiếp S0/0 và S0/1 phải dùng kiểu chuyển mạch process switching. Process switching yêu cầu router xem xét mạng cần tới trong mỗi gói đối chiếu với bảng định tuyến, để chọn đường phù hợp. Trái lại, fast switching chỉ thực hiện xem bảng định tuyến đối với gói đầu tiên, router sau đó lưu kết quả trong bộ nhớ cache tốc độ cao và dùng thông tin trong cache để chuyển tiếp các gói sau tới đích. Fast switching là thiết lập mặc định.
Để bật process switching trên các cổng giao tiếp serial dùng lệnh sau
RouterB(congig)# int S0/0
RouterB(config-if)#no ip route-cache
RouterB(config)# int s0/1
RouterB(config-if)#no ip route-cache
Kiểm tra lại fast switching đã tắt trên cổng giao tiếp dùng lệnh show ip interface
RouterB#show ip interface s0/0
Serial0 is up, line protocol is up
Internet address is 192.168.1.1 255.255.255.0
Broadcast address is 255.255.255.255
Address determined by non-volatile memory
MTU is 1500 bytes
Helper address is not set
Directed broadcast forwarding is enabled
Outgoing access list is not set
Inbound access list is not set
Proxy ARP is enabled
Security level is default
Split horizon is enabled
ICMP redirects are always sent
ICMP unreachables are always sent
ICMP mask replies are never sent
IP fast switching is disabled
...
3. Bởi vì có hai route tới đích trong bảng định tuyến, một nửa số gói sẽ gởi trên một đường, và một nửa gởi trên đường kia. Dùng lệnh debug ip packet để xem gói IP gởi nhận trên router
RouterB#debug ip packet
Từ workstation ping 10.0.0.1. Xem thông báo xuất hiện, các gói IP gởi cân bằng trên hai đường để ngưng debug thực hiện lệnh undebug all (hay u all ).
01:42:24: IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0),
g=192.168.1.2, len 60, forward
01:42:24: IP: s=10.0.0.1 (Serial0/0), d=192.168.3.2 (FastEthernet0/0),
g=192.168.3.2, len 60, forward
01:42:25: IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/1),
g=192.168.2.2, len 60, forward
01:42:26: IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0),
g=192.168.1.2, len 60, forward
01:42:26: IP: s=192.168.3.1 (local), d=255.255.255.255 (FastEthernet0/0),
len 92, sending broad/multicast
01:42:26: IP: s=192.168.1.1 (local), d=255.255.255.255 (Serial0/0),
len 72, sending broad/multicast
01:42:26: IP: s=192.168.2.1 (local), d=255.255.255.255 (Serial0/1),
len 72, sending broad/multicast
01:42:27: IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/1),
g=192.168.2.2, len 60, forward
Các thông báo hơi phức tạp do các gói ping request, ping relply, RIP thông tin cập nhật đều xuất hiện. Để lọc những thông tin cần thiết, tạo access-list trên router. Vì chỉ muốn xem các gói ping request tới mạng 10.0.0.0, nên tạo access-list như sau:
RouterB(config)#access-list 101 permit icmp any 10.0.0.0 0.255.255.255
Áp dụng access-list để lọc các thông báo từ lệnh debug:
RouterB#debug ip packet 101
IP packet debugging is on for access list 101
Thực hiện lại lệnh ping to 10.0.0.1 từ workstation, xem kết quả.
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0), g=192.168.1.2,
len 60, forward
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/1), g=192.168.2.2,
len 60, forward
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0), g=192.168.1.2,
len 60, forward
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/1), g=192.168.2.2,
len 60, forward
4. Sau khi kiểm tra cân bằng tải trên từng gói, cấu hình cân bằng tải trên từng đích đến như sau. Cả hai cổng giao tiếp serial của RouterB chuyển sang chế độ fast switching bằng câu lệnh
RouterB(config-if)#ip route-cache
Với fast switching, thông tin thích hợp trong gói đầu tiên của luồng dữ liệu được lưu lại (cache) như vậy CPU không phải xử lý các gói tiếp theo trong luồng dữ liệu. Kiểm tra lại đã bật fast switching bằng lệnh show ip interface. Bảng định tuyến chỉ xem xét một lần trên mỗi đích tới, các gói cùng tới một host đi theo cùng một đường. Router cần phải xem xét bảng định tuyến chỉ với mạng đích khác hay cache hết hiệu lực. Bật debug ip packet 101 trên RouterB, và ping 10.0.0.1 từ workstation. Khi fast switching bật, chỉ xuất hiện một thông báo. Gói được gởi ra cổng giao tiếp S0/0
RouterB#
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.1 (Serial0/0), g=192.168.1.2,
len 60, forward
Tiếp tục, ping 10.0.0.2, gói sẽ được gởi ra cổng giao tiếp S0/1
IP: s=192.168.3.2 (FastEthernet0/0), d=10.0.0.2 (Serial0/1), g=192.168.2.2,
len 60, forward
5. Thử ping địa chỉ 10.0.0.3 và 10.0.0.4 tất nhiên sẽ không có trả lời, dùng lệnh show ip cache để xem nội dung của route cache. Chú ý rằng bảng cache có sẵn 10.0.0.1 và 10.0.0.2 cũng như tất cả các địa chỉ IP trên mạng 10.0.0.0 mà gói ping thực hiện.
RouterB#show ip cache
IP routing cache 5 entries, 848 bytes
14 adds, 9 invalidates, 0 refcounts
Minimum invalidation interval 2 seconds, maximum interval 5 seconds,
quiet interval 3 seconds, threshold 0 requests
Invalidation rate 0 in last second, 0 in last 3 seconds
Last full cache invalidation occurred 01:40:00 ago
Prefix/Length Age Interface Next Hop
10.0.0.1/32 00:00:15 Serial0/0 192.168.1.2
10.0.0.2/32 00:03:19 Serial0/1 192.168.2.2
10.0.0.3/32 00:00:57 Serial0/0 192.168.1.2
10.0.0.4/32 00:00:43 Serial0/1 192.168.2.2
192.168.3.2/32 00:03:37 FastEthernet0/0 192.168.3.2
Comment