NETWORK TESTING

Kiểm thử Service Function Chain: thứ tự dịch vụ, bypass và failover bất đối xứng

5/9/2026 · 17 phút

Luồng dịch vụ đi qua classifier, firewall, IPS và proxy với đường bypass dự phòng
Mục lục bài viết 10 phần

Service Function Chaining (SFC) định hướng traffic qua chuỗi chức năng như firewall, IPS, proxy hoặc optimizer. Chỉ ping thành công không chứng minh classifier chọn đúng chain, thứ tự dịch vụ được giữ, return path đối xứng hay failover không mở bypass ngoài ý muốn. Bài này biến chain policy thành packet-level test plan.

ĐỌC NHANH

Bài viết giúp bạn

  • Câu hỏi kỹ thuật trước khi kiểm thử
  • Topology và điều kiện đo
  • Biến số phải kiểm soát
Tùy chỉnh đọc
01

Câu hỏi kỹ thuật trước khi kiểm thử

#

RFC 7665 mô tả kiến trúc SFC gồm classifier, Service Function Forwarder và Service Function Path. RFC 8300 định nghĩa Network Service Header (NSH) cho metadata và path information. Triển khai có thể dùng NSH hoặc cơ chế khác; vì vậy cần bắt đầu từ outcome, không từ tên sản phẩm.

Xác định flow nào cần chain nào, thứ tự service, hành vi khi một service lỗi, state cần đồng bộ và đường quay về. Với firewall/IPS stateful, forward path qua node A nhưng return path qua node B có thể gây drop hoặc bypass tùy thiết kế.

02

Topology và điều kiện đo

#

Topology gồm client/server generator, classifier, SFF/fabric, ít nhất hai service function và cặp node dự phòng. Tạo nhiều traffic class: được inspect, bypass hợp lệ và phải bị chặn. Nếu có overlay, giữ đúng MTU, encapsulation và ECMP.

Đặt capture trước classifier, giữa các service và sau chain. Thu thêm policy hit, flow/session table, health-check state, route/overlay counter và application transaction. Timestamp đồng bộ là bắt buộc để đo interruption.

Minh họa: Topology Service Function Chain và các điểm đo theo thứ tự dịch vụ
Minh họa: Topology Service Function Chain và các điểm đo theo thứ tự dịch vụ
03

Biến số phải kiểm soát

#

Khóa phiên bản fabric/service, policy revision, hash key, health-check interval, session sync, timeout, MTU, encapsulation overhead và traffic nền. Traffic profile nêu frame-size mix, connections/s, concurrent sessions, application mix, TLS behavior và tỷ lệ long-lived flow.

Quét source/destination, tenant, protocol, fragmented traffic, encrypted/cleartext, flow duration, ECMP path, node/service failure, policy update và route convergence. Chỉ thay một fault dimension mỗi run trước khi thử lỗi kết hợp.

04

KPI và bằng chứng

#

KPI policy gồm classification accuracy, chain-order accuracy, bypass false positive/negative và metadata fidelity. KPI dịch vụ gồm throughput, latency/jitter, packet loss, connections/s, concurrent session, service interruption và restoration time. Với stateful service, đo session preservation và duplicate/reset.

Bằng chứng tốt phải nối generator flow ID với classifier decision, hop capture, service log/session và server response. TTL/hop hoặc NSH field chỉ chứng minh đường đi một phần; cần log xử lý để xác nhận service đã áp policy.

05

Ma trận quyết định chain

#

Mỗi row cần owner nghiệp vụ và security phê duyệt. “High availability” không tự quyết định nên fail-open hay fail-close.

  • User → Internet — Expected path: FW → IPS; Fault policy: fail-close hoặc theo thiết kế; Pass evidence: hit cả hai service đúng thứ tự
  • Trusted backup — Expected path: FW-only/bypass đã duyệt; Fault policy: không tự mở rộng; Pass evidence: classifier + route đúng
  • Admin → management — Expected path: chain riêng; Fault policy: fail-close; Pass evidence: identity/policy log
  • Long-lived flow — Expected path: chain stateful; Fault policy: preserve hoặc reset có kiểm soát; Pass evidence: session timeline
  • Gói vượt MTU — Expected path: PTB/fragment theo thiết kế; Fault policy: không blackhole; Pass evidence: PCAP + completion
  • Service unhealthy — Expected path: reroute/bypass/drop; Fault policy: đúng SLA và risk policy; Pass evidence: health + path + result
06

Test plan chức năng và policy

#

Chạy baseline từng traffic class ở tải thấp. Gắn marker vào request, xác minh classifier chọn đúng path, thứ tự service và return path. Thử negative policy, fragmented packet, unknown application và metadata thiếu/sai trong lab được ủy quyền.

Thực hiện atomic/non-atomic policy update để tìm transient bypass, duplicate classification hoặc flow pinning sai. Kiểm tra flow cũ và flow mới riêng vì nhiều hệ thống giữ session theo policy lúc khởi tạo.

  • Công bố expected path cho từng traffic class.
  • Kiểm tra forward và return path.
  • Đối soát packet, classifier, service và server log.
  • Thử policy update với flow mới/cũ.
  • Kiểm tra MTU/encapsulation và ICMP Packet Too Big.
  • Ghi rõ fail-open/fail-close theo service.
07

Hiệu năng, lỗi và phục hồi

#

Đo từng service riêng trước toàn chain để xác định bottleneck. Tăng connections/s, concurrent sessions và throughput theo bậc; giữ application mix. Quan sát queue, CPU, session table, packet loss và latency percentile tại từng hop.

Gây lỗi link, SFF, service process, health check và state sync. Tách detection time, reroute time, service restoration và application recovery. Sau failback, tìm asymmetric path, stale session và double processing.

Minh họa: Các thành phần thời gian phục hồi của Service Function Chain
Minh họa: Các thành phần thời gian phục hồi của Service Function Chain
08

Runbook triển khai

#

Canary theo tenant/traffic class, bắt đầu ở lưu lượng thấp. Dashboard cần classification hit, per-service input/output, bypass, health state, session sync, loss và p95/p99 latency. Có lệnh rollback policy và đường OOB.

Sau thay đổi chain order, service version, classifier, encapsulation hoặc ECMP, chạy regression. Capture cần lọc và bảo vệ dữ liệu nhạy cảm; retention phải phù hợp policy.

09

Giới hạn kết luận

#

SFC architecture không bảo đảm capability của một sản phẩm cụ thể. Kết quả phụ thuộc topology, service state, traffic mix, MTU, health policy và fault timing. Một chain pass với HTTP ngắn chưa đại diện TLS, UDP hay flow dài.

Không kết luận “không bypass” nếu observation point hoặc capture có blind spot. Báo cáo phải ghi phần traffic chưa giải mã, sampled telemetry và mọi counter không đối soát được.

10

Khái niệm cần nhớ

#
  • SFC: Service Function Chaining.
  • Classifier: thành phần gán traffic vào service path.
  • SFF: Service Function Forwarder.
  • SFP: Service Function Path.
  • NSH: Network Service Header theo RFC 8300.
  • Fail-open/fail-close: tiếp tục cho qua hoặc chặn khi service lỗi.
  • Flow symmetry: hai chiều của flow đi qua state phù hợp.
THUẬT NGỮ NHANH

Khái niệm cần nhớ

DUT / SUT
Thiết bị hoặc toàn bộ hệ thống đang là đối tượng của bài kiểm thử.
Steady state
Giai đoạn tải đã ổn định và đủ điều kiện để lấy số liệu đại diện.
Pass / fail
Kết luận dựa trên ngưỡng đã thống nhất, luôn đi cùng topology, cấu hình và điều kiện đo.
TÀI LIỆU ĐỐI CHIẾUTài liệu tham khảo3 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.

Nguyên tắc biên tập

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.

Thông số và khả năng sản phẩm có thể thay đổi theo phiên bản. Hãy đối chiếu tài liệu chính thức trước khi xây dựng cấu hình hoặc tiêu chí nghiệm thu.
BẮT ĐẦU TỪ BÀI TOÁN

Cần chuyển kiến thức thành test plan?

Chia sẻ mục tiêu, topology và ràng buộc kỹ thuật. NetVali sẽ cùng bạn xác định bài đo phù hợp.

Trao đổi yêu cầu kỹ thuật