
Mục lục bài viết 10 phần
Control Plane Policing (CoPP) chỉ có giá trị khi thiết bị vẫn duy trì routing, neighbor discovery và quản trị hợp lệ dưới tải bất thường. Một counter “drop” tăng chưa chứng minh policy đúng: traffic có thể bị phân loại sai, CPU vẫn bão hòa hoặc gói quan trọng bị chặn nhầm.
Bài viết giúp bạn
- CoPP cần chứng minh điều gì?
- Topology và vùng an toàn
- Traffic classification và biến số
CoPP cần chứng minh điều gì?
#Control plane xử lý packet gửi tới chính thiết bị hoặc bị punt từ forwarding plane: routing protocol, ARP/ND, ICMP exception, TTL expiry, management và một số packet bất thường. Transit traffic thường đi bằng phần cứng, nhưng miss, option hoặc exception có thể đẩy lên CPU. Phân loại khác nhau theo kiến trúc và phiên bản.
Bài kiểm thử trả lời bốn câu hỏi: lưu lượng vào đúng class không; policer có hành vi theo cấu hình không; giao thức quan trọng còn ổn định không; và thiết bị có phục hồi sạch sau burst không. CoPP không thay thế infrastructure ACL, management-plane protection hay hardening dịch vụ.
RFC 6192 cung cấp khuyến nghị bảo vệ control plane cho hạ tầng IP. Đây là hướng dẫn kiến trúc, không phải profile CoPP dùng chung. Class, rate và burst phải dựa trên baseline, topology, scale và quy trình vận hành của mạng cụ thể.
Topology và vùng an toàn
#Dùng lab cô lập gồm traffic generator ở access/edge, DUT, hai routing peer, management station qua đường ngoài băng và collector syslog/telemetry. Một luồng transit ổn định làm canary; các luồng control-plane hợp lệ và tải thử được tạo từ nguồn riêng để truy nguyên.
Thu CPU theo core/process, hardware punt/drop, class/policer counter, routing adjacency, ARP/ND, management latency, packet sequence và log. Có watchdog ngoài DUT để dừng generator nếu mất quản trị, CPU vượt ngưỡng an toàn hoặc adjacency quan trọng rơi ngoài kịch bản.
Không dùng Internet hoặc production làm nguồn traffic thử. Packet malformed, scan hoặc flood chỉ chạy trong phạm vi sở hữu/ủy quyền, rate cap và cửa sổ đã duyệt.

Traffic classification và biến số
#Lập inventory protocol trước khi viết profile: BGP/OSPF/IS-IS, BFD, ARP/IPv6 ND, DHCP relay, ICMP/ICMPv6, TTL expiry, SSH/SNMP/NETCONF/gNMI, NTP/PTP và vendor-specific exception. Xác nhận destination, source zone, TTL/hop-limit, fragment, extension header và encapsulation ảnh hưởng classification thế nào.
Biến · Cần khóa · Lý do
NOS/line card · model, version, mode · Punt path thay đổi theo nền tảng
Class map · match order, default class · Tránh shadow hoặc fall-through
Policer · CIR/rate, burst, action · Burst quyết định loss ngắn hạn
Protocol scale · peer, route, neighbor · Baseline hợp lệ không cố định
Packet mix · size, IPv4/IPv6, encapsulation · PPS và parser path khác nhau
Telemetry · polling/stream rate · Chính hệ thống đo có thể tạo tải
Mỗi stream dùng ID/sequence và rate độc lập. Không tăng đồng thời mọi loại traffic ở pha tìm nguyên nhân. Sau khi xác nhận từng class, mới chạy composite profile để thấy cạnh tranh tài nguyên.
KPI và bằng chứng
#KPI gồm offered/accepted/dropped rate theo class; policer conformity; CPU p50/p95/max; control-plane queue; routing adjacency flap; BFD timeout; ARP/ND resolution latency; management success/latency; transit packet loss/latency; syslog/telemetry completeness và recovery time.
False positive ở đây là packet hợp lệ bị drop hoặc deprioritize ngoài policy. False negative là traffic thử vượt rate nhưng không bị giới hạn hoặc đẩy CPU vượt ngân sách. Báo cả hai; chỉ tối ưu drop ratio có thể phá vận hành.
Bằng chứng cần có cấu hình trước/sau, mapping stream→class, counter delta, timestamp generator, CPU/process timeline, adjacency log và pcap mẫu. Counter aggregate không đủ nếu nhiều stream chung class; generator result giúp biết flow nào bị tác động.
Ma trận giao thức và quyết định
#Traffic · Kỳ vọng · KPI quyết định · Negative test
BGP/IGP hợp lệ · Adjacency không flap · keepalive/update latency · burst khác class
BFD · Không timeout ở baseline mục tiêu · loss/jitter per session · congestion có kiểm soát
ARP/ND · Neighbor tạo đúng · resolution p99 · churn vượt baseline
ICMP exception · Đủ cho vận hành, có rate limit · reply/exception rate · TTL-expiry burst
Management · OOB luôn dùng được · SSH/API success · in-band rate cap
Unknown/default · Bị giới hạn theo policy · drop + CPU · packet mix an toàn
Transit canary · Không bị ảnh hưởng ngoài SLO · loss/latency · composite load
Ưu tiên giao thức không đồng nghĩa “không giới hạn”. Một lỗi vòng lặp hoặc peer hỏng có thể biến traffic vốn hợp lệ thành overload. Thiết kế class cần ceiling và quan sát rõ.
Test plan tăng tải có kiểm soát
#Rate tăng phải có ceiling cứng. Nếu thiết bị không đáp ứng stop command qua in-band, watchdog/OOB phải dừng nguồn ở ngoài DUT. Không tiếp tục tìm điểm sập khi mục tiêu đã là xác minh ngưỡng an toàn.
- Lưu config/version và xác nhận OOB management, watchdog, stop condition.
- Chạy transit canary và protocol baseline ở scale mục tiêu.
- Replay từng legitimate class ở 25/50/75/100% baseline peak.
- Tăng một test stream theo bậc tới policer; giữ mỗi bậc đủ lâu.
- Đối chiếu offered, hardware counter, CPU và protocol continuity.
- Lặp cho IPv4/IPv6 và packet-size/profile cần thiết.
- Chạy composite mix gồm routing update, neighbor churn, management và test burst.
- Thử telemetry burst hoặc collector reconnect để thấy self-induced load.
- Dừng tải; đo queue drain, CPU recovery, adjacency và management.
- Rollback; so toàn bộ state/counter với baseline và lưu raw evidence.
Failure, recovery và quan sát
#Thử một thay đổi policy sai có kiểm soát trong lab: match order chặn nhầm keepalive, burst quá nhỏ hoặc default class quá rộng. Mục tiêu là xác minh alert, rollback và thời gian phục hồi, không chứng minh khả năng gây DoS.
Nếu counter drop tăng đúng nhưng CPU vẫn cao, xem packet có bị punt trước policer, logging quá mức hoặc class khác chưa giới hạn. Nếu CPU ổn nhưng adjacency flap, xem burst allowance, scheduling priority và timer. Nếu management chậm riêng, tách authentication/AAA và control-plane queue.
Sau tải, kiểm tra stale neighbor, stuck process, telemetry gap và log storm. Recovery không chỉ là CPU hạ; routing, quản trị và forwarding phải trở lại baseline.

Checklist nghiệm thu
#- [ ] Có inventory đầy đủ protocol/exception dùng thực tế.
- [ ] OOB management và stop condition hoạt động.
- [ ] Mapping từng stream vào class đã được xác minh.
- [ ] Có baseline theo protocol scale và peak hợp lệ.
- [ ] Đã đo false positive và false negative.
- [ ] Transit canary được giữ suốt bài.
- [ ] IPv4/IPv6, packet size và encapsulation đúng phạm vi.
- [ ] Composite profile không làm rơi giao thức ưu tiên ngoài ngưỡng.
- [ ] Recovery gồm CPU, adjacency, neighbor, management và telemetry.
- [ ] Rollback đã chạy thử, raw config/counter được lưu.
Giới hạn của kết luận
#CoPP rất phụ thuộc silicon, punt architecture, line card, NOS và feature combination. Kết quả trên chassis/routing engine này không đại diện model khác. Traffic generator không tái tạo mọi lỗi parser; không nên dùng nội dung nguy hiểm khi benign packet/rate profile đã đủ trả lời câu hỏi.
Không công bố rate cấu hình như “chuẩn” cho mọi mạng. Rate thấp ở lab ít peer có thể chặn production lúc reconvergence; rate cao có thể không bảo vệ CPU. Cần tái kiểm thử sau nâng cấp NOS, thay line card, bật telemetry hoặc tăng routing/neighbor scale.
Khái niệm cần nhớ
#- Control plane: Thành phần xử lý giao thức và quyết định trạng thái mạng.
- Punt: Chuyển packet từ forwarding path lên CPU/control plane.
- Policer: Giới hạn lưu lượng theo rate/burst và action.
- CIR/burst: Tốc độ cam kết và lượng burst được phép.
- Infrastructure ACL: ACL bảo vệ địa chỉ hạ tầng trước traffic không cần thiết.
- False positive: Traffic hợp lệ bị chặn nhầm.
- Canary flow: Luồng ổn định dùng phát hiện tác động ngoài ý muốn.
Khái niệm cần nhớ
- Security efficacy
- Mức độ phát hiện hoặc ngăn chặn đúng nội dung kiểm thử trong phạm vi đã xác định.
- Goodput
- Lưu lượng ứng dụng hữu ích tới đích, không tính phần truyền lại hoặc overhead không tạo giá trị.
- False positive
- Lưu lượng hợp lệ bị nhận diện hoặc xử lý nhầm như một mối đe dọa.
TÀI LIỆU ĐỐI CHIẾUTài liệu tham khảo4 nguồn +
Nội dung được biên soạn độc lập, theo hướng vendor-neutral và đối chiếu các tài liệu gốc dưới đây. Tính năng sản phẩm cần được kiểm tra lại theo phiên bản đang sử dụng.
NetVali ưu tiên nguồn tiêu chuẩn và tài liệu chính thức; phân biệt khuyến nghị triển khai với yêu cầu của tiêu chuẩn; không công bố thông số sản phẩm chưa gắn với phiên bản và điều kiện đo.
