Bảng phụ của Cisco Phần cứng dCEF được lưu trữ ở đâu?


8

Đối với Cisco Phần cứng dCEF, dựa trên một số tài liệu được xuất bản trên trang web của Cisco, tại giao diện / thẻ dòng xâm nhập, về mặt khái niệm, nó tìm kiếm FIB với địa chỉ IP dst và nhận được một con trỏ đến mục nhập bảng phụ, nơi lưu trữ thông tin viết lại L2, ví dụ: nexthop mac, v.v.

Nhưng điều làm tôi bối rối là, không phải việc viết lại L2 xảy ra trên giao diện / thẻ dòng đi ra sao? Nếu vậy, tại sao bảng kề này được lưu trữ trên đường vào? Hoặc bảng kề kề đang diễn ra ở đâu? xâm nhập hay đi ra? Nếu điều này đang xâm nhập, thông tin ghi lại L2 có được chuyển từ thẻ xâm nhập sang thẻ đường ra không? Điều đó có gây lãng phí băng thông vải không?


1
Hãy suy nghĩ về: làm thế nào một gói có thể được chuyển tiếp đến giao diện đầu ra nếu giao diện xâm nhập không có bất kỳ sự phụ thuộc nào?
Ricky Beam

Chà, bạn không phải lưu trữ bảng kề kề ai, bạn có thể lưu trữ một số loại id ajacency, sau đó, bạn có thể sử dụng id kề này để tra cứu bảng kề và lấy thông tin viết lại L2. Trong thực tế, nếu bảng kề này được lưu trữ trên asic xâm nhập, bạn sẽ phải lưu trữ mọi thông tin về tính phụ thuộc của thẻ đầu ra vào thẻ đường vào, đó có phải là một sự lãng phí rất lớn không?
wei

Câu trả lời:


9

Nhưng điều làm tôi bối rối là, không phải việc viết lại L2 xảy ra trên giao diện / thẻ dòng đi ra sao?

Không thực sự, quyết định chuyển tiếp / thả xuống, tra cứu kề kề L2, suy giảm TTL, tính toán tổng kiểm tra IP, v.v ... tất cả đều xảy ra trên linecard xâm nhập .

Về mặt khái niệm, bạn có thể chia luồng thông tin vào mặt phẳng điều khiển và mặt phẳng dữ liệu, ngay cả trong khung bộ định tuyến. Có vẻ như hầu hết sự nhầm lẫn của bạn xoay quanh cách máy bay điều khiển hoạt động ... đây là một sơ đồ nhanh mà tôi đã hack để minh họa ...

IPC và CEF

  • Bộ xử lý tuyến đường xây dựng bảng CEF từ thông tin phụ thuộc lớp 2 (bao gồm ethernet, ppp, sonet, v.v.) cũng như tất cả các tuyến ưa thích
  • Toàn bộ thông tin bảng CEF và bảng phụ thuộc được đóng gói vào các thông điệp IPC, được gửi giữa Bộ xử lý tuyến và tất cả các dòng. Các mục CEF riêng lẻ được hiển thị dưới dạng XDR trong thông điệp IPC. XDR chỉ là một cách cụ thể của Cisco để viết các mục CEF vào tin nhắn IPC.
  • Các linecard riêng lẻ giải nén các XDR từ các thông điệp IPC và xây dựng (nên là gì) một bản sao chính xác của CEF và bảng phụ thuộc của Bộ xử lý tuyến đường trên thẻ.
  • Sau khi linecard hoàn thành các sửa đổi đối với CEF và các bảng kề, một quy trình dành riêng cho nền tảng sẽ chạy trên linecard để tính toán các cấu trúc dữ liệu cần thiết cho phần cứng của nền tảng để chuyển tiếp và viết lại các gói trên chính linecard.

IPC được đồng bộ hóa là rất quan trọng đối với hoạt động của dCEF; nếu bạn không giữ tin nhắn được đồng bộ hóa giữa tất cả các dòng, bạn có thể kết thúc với sự không nhất quán tiền tố .

Các cơ chế về cách thức bộ định tuyến thực hiện điều này là dành riêng cho nền tảng, vì vậy tôi sẽ tham khảo nền tảng mà tôi biết rõ nhất là Catalyst 6500 với Trình giám sát720 / Người giám sát2T. Công cụ chuyển tiếp & viết lại trên linecard Catalyst 6500 dCEF thực sự là một bản sao thu nhỏ của chính Người giám sát; do đó, toàn bộ quá trình chuyển tiếp và chuyển đổi IP thực hiện giống như khi gói được chuyển tiếp tập trung vào người giám sát. Thẻ linecard xâm nhập tìm kiếm thông tin cần thiết trong bảng CAM / CEF, sau đó xây dựng một tiêu đề mà nó gắn vào gói.

Các linecard đi ra nhìn vào tiêu đề và sử dụng thông tin kề bên trong nó để ghi gói lên dây.

Tại sao bảng kề này được lưu trữ trên đường vào?

Vì vậy, bạn có thể đưa ra toàn bộ quyết định chuyển tiếp khi vào.

Nếu điều này đang xâm nhập, thông tin ghi lại L2 có được chuyển từ thẻ xâm nhập sang thẻ đường ra không?

Đúng

Điều đó có gây lãng phí băng thông vải không?

Tôi không nghĩ vậy, nhưng một lần nữa tôi có thể bị thiên vị :-)


Cảm ơn rất nhiều cho câu trả lời chi tiết! Về cơ bản, tôi giả sử sợi linecard được đồng bộ hóa với rp. Sự nhầm lẫn của tôi thực sự xoay quanh mặt phẳng dữ liệu, bởi vì tôi biết một số sản phẩm không phải là cisco đang thực hiện tra cứu bảng phụ, vì vậy tôi đang cố gắng tìm hiểu xem cisco có thực sự chọn làm điều đó hay không và tại sao, điều này làm tôi lãng phí bộ nhớ và băng thông vải.
wei

Lãng phí là chủ quan. Bạn phải thực hiện việc tra cứu ở đâu đó; người ta có thể lập luận rằng việc thực hiện tra cứu đi ra làm lãng phí tài nguyên và làm cho sản phẩm đắt hơn. Cuộc tranh luận có thể diễn ra trong một thời gian dài ném đá vào các góc độ khác nhau của đối tượng bạn không thích. Tóm lại, Cisco chọn sử dụng một lượng bộ nhớ khiêm tốn cho thẻ nhập cảnh và thông tin về sự phụ thuộc không được gửi qua kết cấu trên Catalyst6500; kết quả kề được gửi đến linecard đi ra thông qua một RBUS chuyên dụng.
Mike Pennington

Để đọc thêm về bài báo Kiến trúc
Mike Pennington

3

Khi Cisco Express Forwarding được phân phối được bật, các thẻ dòng, chẳng hạn như thẻ dòng VIP hoặc thẻ dòng Bộ định tuyến Internet Cisco 12000 Series, sẽ duy trì một bản sao giống hệt của bảng FIB và bảng phụ. Các thẻ dòng thực hiện chuyển tiếp nhanh giữa các bộ điều hợp cổng, do đó làm giảm RP liên quan đến hoạt động chuyển mạch. Cisco Express Forwarding phân phối sử dụng cơ chế truyền thông liên tiến trình (IPC) để đảm bảo đồng bộ hóa các bảng FIB và các bảng phụ thuộc trên RP và thẻ dòng. - Cisco

RP (chạy các quy trình giao thức định tuyến khác nhau) xây dựng FIB và xuất bản nó cho tất cả các dòng. Có một FIB, nhưng nó được nhân rộng trên mọi thẻ. (vâng, đôi khi họ không đồng bộ.)


Vâng, phần đó tôi hiểu. Phần tôi bối rối là tất cả các tài liệu được xuất bản của cisco dường như ngụ ý rằng thông tin viết lại L2 được tra cứu khi xâm nhập, điều này không có ý nghĩa nhiều với tôi.
wei
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.