Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Giới thiệu về BGP Route-Reflector trong BGP

    Thiết kế và cấu hình một mạng iBGP

    Các thảo luận trước đã đề cập đến hạn chế trong thiết kế iBGP. Các iBGP yêu cầu các router BGP phải cấu hình full-mesh. Vấn đề này có thể được giải quyết bằng các giải pháp thiết kế. Các giải pháp về cấu hình sẽ cho phép ta bỏ qua luật các iBGP phải được full mesh. Giải pháp được giới thiệu trong phần này là giải pháp dùng route reflector. Các lệnh mới này cho phép ta phát triển một mạng hub-and-spoke để đơn giản hóa các kết nối TCP.

    Route Reflectors

    Một route reflector (RR) là một router được cấu hình để chuyển những routing update đến các router láng giềng hoặc đến các router chạy BGP bên trong một AS. Các router iBGP cần phải được chỉ ra như là RR client trong khi cấu hình. Khi một RR client gửi một update đến route-reflector, route-reflector sẽ chuyển update đó đến các router client khác.

    Đặc biệt, route-reflector định nghĩa luật split horizon. Luật này nói rằng một iBGP router sẽ không truyền một route được học từ một router láng giềng trong cùng một AS. Route Reflector và RR client sẽ đòi hỏi một quan hệ láng giềng đầy đủ bởi vì route reflector sẽ gửi các cập nhật từ các client khác nhưng việc thiết lập peer giữa các client là không cần thiết.

    Một route-reflector sẽ kết nối đến các router BGP mà nó không đẩy route đến. Từ quan điểm của route-reflector, các neighbor này được gọi là non-clients. Các router nonclients phải được kết nối fully-meshed với các route-reflector và với các non-client khác.

    Khi một router đã cấu hình như một route-reflector, nó sẽ đẩy những đường đi được học từ các iBGP khác chỉ đến các route-reflector clients và tới các iBGP/eBGP neighbors. Điều này có nghĩa là một thiết kế hub-and-spoke có thể được triển khai trong một AS giữa các iBGP peers, như vậy giảm thiểu số session giữa các routers. Cả route-reflector và các client của nó hình thành nên một đơn vị để chia sẽ thông tin. Đơn vị này gọi là cluster.

    Một Autonomous System có thể được chia ra thành các cluster, trong các các cluster sẽ có các route-reflector được chỉ định và cấu hình. Phải có ít nhất một route-reflector trong mỗi cluster. Nếu một route-reflector kết nối đến các route reflector khác, route-reflector phải được fully-meshed. Điều này nhằm đảm bảo các bảng iBGP routing là đầy đủ. Khi một route-refletor chuyển đi một update, thuộc tính Originator_ID sẽ được thiết lập. Đây là BGP routerID của router đã tạo ra đường đi. Nếu router này nhận lại bản update đó, router sẽ thấy ID của chính nó và sẽ bỏ qua gói tin update. Điều này nhằm ngăn ngừa khả năng routing loop.

    Nếu có nhiều route-reflector trong cluster, các router sẽ phân biệt với nhau bằng clusterID. Thông số này phục vụ cùng một mục đích như thuộc tính Originator_ID để ngăn ngừa routing loops.

    Với cách dùng route-reflector, router đóng vai trò route-reflector sẽ tốn nhiều tài nguyên hơn. Nếu cấu hình route-reflector không chính xác, nó có thể gây ra routing-loop. Có nhiều mức route-reflector có thể được cấu hình bằng cách tạo ra các thiết kế theo thứ bậc. Các router không là thành phần của route-reflector sẽ không bị ảnh hưởng trong những thay đổi về thiết kế và những thay đổi về quá trình truyền các cập nhật. Thay vào đó, các router này sẽ không nhận biết được bất cứ thay đổi nào vì nó vẫn nhận được các update mà nó cần. Bản thân các routing update cũng không bị thay đổi bởi vì không có sự thay đổi nào trong giá trị các thuộc tính được mang trong các routing update.

    Chính vì các đặc điểm trên, quá trình chuyển đổi thiết kế một hệ thống mạng nào đó sang dạng dùng route-reflector thì rất dễ dàng. Một thiết kế quan trọng là bản thân các route-reflector trong một AS cũng phải fully-meshed. Ngoài ra, một route-reflector này có thể là client cho một route-reflector khác. Thiết kế như vậy khá phức tạp và yêu cầu xem xét cẩn thận bởi vì khi các route-reflector được cấu hình và split horizon bị disable, không còn một cơ chế nào để bảo vệ routing loop.

    Hình 8-4: Thiết kế Route-reflector

    Các lợi ích của route-reflector bao gồm
    - Khả năng mở rộng mạng
    - Thiết kế mang tính cấu trúc cao
    - Giảm traffic trên mạng.
    - Giảm bộ nhớ và CPU cần thiết để duy trì các phiên TCP session trên các máy iBGP peers.
    - Hội tụ nhanh hơn và mạng trở nên đơn giản hơn bởi vì có đến hai giao thức định tuyến được dùng: iBGP cho các thông tin định tuyến bên ngoài đi qua AS; IGP cho các router bên trong một AS.

    Hoạt động của RR:

    Một RR đơn giản giống như một tấm gương để phản hồi các update từ các client đến các client khác mà không yêu cầu một mạng phải fully-meshed.

    Khi một RR nhận được một cập nhật:

    - Client sẽ chuyển update đó cho router láng giềng của nó, trong trường hợp này là RR
    - Một cập nhật từ client được nhận từ RR và cập nhật sẽ được chuyển đến các RR clients cũng như nonclients. Thông số originatorID ban đầu sẽ bị loại trừ ra khỏi cập nhật.
    - Nếu có nhiều đường đi nhận được từ RR, đường đi tốt nhất sẽ được chọn thông qua RR.
    - Router duy nhất mà có update chuyển đến nó là nguồn gốc của route
    - Một nonclient router sẽ chuyển các cập nhật tới các láng giềng của nó, có thể là một RR.
    - Một RR nhận một update từ một router nonclient và update chỉ được chuyển đến clients
    - RR sẽ cập nhật cả client và non-clients.
    Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X