Sau đây là các thành phần NetFlow linh hoạt:
• Bản ghi
• Flow Monitors
• Flow Exporters
Trong NetFlow linh hoạt, quản trị viên có thể chỉ định những gì cần theo dõi, dẫn đến ít luồng hơn. Điều này giúp mở rộng quy mô trong các mạng bận rộn và sử dụng ít tài nguyên hơn đã bị sử dụng bởi các tính năng và dịch vụ khác.
Flow Monitors
Trong NetFlow linh hoạt, các giám sát luồng được áp dụng cho các giao diện thiết bị mạng để thực hiện giám sát lưu lượng mạng. Dữ liệu luồng được thu thập từ lưu lượng mạng và được thêm vào bộ đệm ẩn giám sát luồng trong quá trình giám sát dựa trên các trường khóa và khơng khóa trong bản ghi luồng.
Flow Exporters
Các thực thể xuất dữ liệu trong bộ đệm ẩn giám sát luồng tới một hệ thống từ xa được gọi là trình xuất luồng. Các trình xuất luồng được định cấu hình thành các thực thể riêng biệt và được gán cho các trình giám sát luồng. Quản trị viên có thể tạo một số trình xuất luồng và gán chúng cho một hoặc nhiều trình giám sát luồng. Trình xuất luồng bao gồm địa chỉ đích của máy chủ báo cáo, loại truyền tải (UDP hoặc SCTP) và định dạng xuất tương ứng của phiên bản NetFlow hoặc IPFIX.
Flow Samplers
Bộ lấy mẫu luồng được tạo dưới dạng các thành phần riêng biệt trong cấu hình của bộ định tuyến. Bộ lấy mẫu luồng được sử dụng để giảm tải trên thiết bị đang chạy NetFlow linh hoạt bằng cách giới hạn số lượng gói được chọn để phân tích.
Lấy mẫu luồng trao đổi độ chính xác giám sát đối với hiệu suất của bộ định tuyến. Khi chúng ta áp dụng bộ lấy mẫu cho bộ giám sát luồng, tải trên bộ định tuyến do chạy bộ theo dõi luồng sẽ giảm vì số lượng gói mà bộ giám sát luồng phải phân tích giảm. Việc giảm số lượng gói được phân tích bởi trình giám sát luồng gây ra sự giảm tương ứng về độ chính xác của thơng tin được lưu trữ trong bộ nhớ cache của trình giám sát luồng.
Cách cấu hình Netflow sẽ được trình bày trong phần sau.
4.1.2. IPFIX
IPFIX, viết tắt của cụm từ “Internet Protocol Flow Information Export”, là một tiêu chuẩn IETF được tạo ra dựa trên nhu cầu về một tiêu chuẩn xuất luồng thông tin lưu lượng mạng chung giữa các thiết bị. Tiêu chuẩn này dùng để giám sát và xuất luồng
thông tin qua các router, switch và các thiết bị mạng khác. IPFIX là một tiêu chuẩn phổ biến, hoạt động tốt trên hầu hết các thiết bị.
Giao thức IPFIX xác định thông tin luồng IP, sau đó được định dạng và chuyển từ Exporter sang Collector. Trước đây, nhiều nhà khai thác mạng dữ liệu đang dựa vào công nghệ NetFlow độc quyền của Cisco Systems để xuất thông tin luồng lưu lượng.
Các yêu cầu về tiêu chuẩn IPFIX ban đầu đã được ghi lại trong RFC 3917. Cisco NetFlow V9 là cơ sở cho IPFIX. Các thông số kỹ thuật cơ bản cho IPFIX được ghi lại trong RFC 7011 đến RFC 7015 và RFC 5103.
IPFIX xác định các phần tử khác nhau được xếp thành 12 nhóm tùy theo khả năng ứng dụng của chúng:
• Định danh
• Đo lường và xuất cấu hình quy trình
• Đo lường và xuất thống kê quy trình
• Các trường tiêu đề IP
• Các trường tiêu đề truyền tải
• Các trường tiêu đề IP phụ
• Thuộc tính gói có nguồn gốc
• Thuộc tính luồng tối thiểu/tối đa
• Dấu thời gian luồng
• Bộ đếm theo luồng
• Các thuộc tính luồng khác
• Đệm
IPFIX được coi là một giao thức đẩy. Mỗi thiết bị hỗ trợ IPFIX thường xuyên gửi các bản tin IPFIX đến các bộ thu được định cấu hình mà khơng có bất kỳ sự tương tác nào của bộ thu. Người gửi kiểm sốt hầu hết việc điều phối các gói dữ liệu IPFIX. IPFIX giới thiệu khái niệm về các mẫu, tạo nên các gói dữ liệu luồng này tới máy thu. IPFIX cũng cho phép người gửi sử dụng các kiểu dữ liệu do người dùng xác định trong các thư của nó. IPFIX giống giao thức truyền điều khiển luồng (SCTP) làm giao thức lớp truyền tải của nó; tuy nhiên, nó cũng hỗ trợ việc sử dụng các giao thức TCP hoặc UDP.
Các bản ghi NetFlow của Cisco truyền thống thường được xuất qua các gói UDP. Địa chỉ IP của bộ thu NetFlow và cổng UDP đích phải được định cấu hình trên thiết bị
gửi. Tiêu chuẩn NetFlow (RFC 3954) không chỉ định một cổng lắng nghe NetFlow cụ thể. Cổng UDP tiêu chuẩn hoặc phổ biến nhất được NetFlow sử dụng là cổng UDP 2055, nhưng các cổng khác, chẳng hạn như 9555, 9995, 9025 và 9026, cũng có thể được sử dụng. Cổng UDP 4739 là cổng mặc định được IPFIX sử dụng.
4.1.2.1. Kiến trúc IPFIX
IPFIX sử dụng thuật ngữ kiến trúc sau:
• Q trình đo (MP): Tạo bản ghi luồng từ các gói tại một điểm quan sát. Nó đánh dấu thời gian, lấy mẫu và phân loại các luồng. MP cũng duy trì các luồng trong cấu trúc dữ liệu nội bộ và chuyển thơng tin luồng hồn chỉnh đến quy trình xuất (EP).
• Quy trình xuất (EP): Gửi hồ sơ luồng qua IPFIX từ một hoặc nhiều MP tới một hoặc nhiều quy trình thu thập (CP).
• Quy trình thu thập (CP): Nhận bản ghi qua IPFIX từ một hoặc nhiều EP.
IPFIX Trung gian
IPFIX giới thiệu khái niệm về trung gian. Trung gian thu thập, chuyển đổi và xuất lại các luồng IPFIX cho một hoặc nhiều quy trình thu thập. Mục đích chính của chúng là cho phép liên kết các thông báo IPFIX. Trung gian bao gồm một quy trình trung gian (ImP) cho phép thực hiện những điều sau:
• Để dữ liệu NetFlow được giữ ẩn danh
• Để dữ liệu NetFlow được tổng hợp
• Lọc dữ liệu NetFlow
• Proxy của lưu lượng web
• Dịch IP
Mẫu IPFIX
Mẫu IPFIX mô tả cấu trúc của bản ghi dữ liệu luồng trong tập dữ liệu. Mẫu được xác định bằng ID mẫu, tương ứng với ID tập hợp trong tiêu đề tập hợp của tập dữ liệu. Các mẫu bao gồm các cặp "phần tử thông tin (IE) và độ dài". IE cung cấp thông tin loại trường cho mỗi mẫu. Một mơ hình thơng tin tiêu chuẩn bao gồm gần như tất cả các trường hợp sử dụng thu thập luồng phổ biến, chẳng hạn như sau:
• Bộ 5 truyền thống (địa chỉ IP nguồn, địa chỉ IP đích, cổng nguồn, cổng đích và giao thức IP)
• Xử lý gói như địa chỉ IP next-hop IPv4, ASN đích BGP và các địa chỉ khác.
• Dấu thời gian đến độ phân giải nano-giây
• Các trường tiêu đề IPv4, IPv6, ICMP, UDP và TCP
• Các trường tiêu đề IP phụ như địa chỉ MAC nguồn và mạng cục bộ không dây (WLAN) mã định danh bộ dịch vụ (SSID)
• Nhiều bộ đếm khác nhau (số delta gói, tổng số kết nối, bộ đàm hàng đầu, v.v.)
• Thơng tin siêu dữ liệu về luồng như giao diện đi vào và đi ra, hướng luồng cũng như thông tin chuyển tiếp và định tuyến ảo (VRF)
4.1.2.2. Giới thiệu về giao thức truyền điều khiển luồng (SCTP)
IPFIX sử dụng SCTP, cung cấp dịch vụ truyền gói được thiết kế để hỗ trợ một số tính năng khác ngồi khả năng TCP hoặc UDP. Các tính năng này bao gồm các tính năng sau:
• Luồng gói
• Mở rộng độ tin cậy từng phần (PR)
• Phân phối gói hoặc bản ghi khơng theo thứ tự
• Đa phân lớp truyền tải
Nhiều người gọi SCTP như một máy trạng thái đơn giản hơn (so với các tính năng được cung cấp bởi TCP) với một danh mục lựa chọn các tính năng. PR-SCTP cung cấp một phương tiện truyền tải đáng tin cậy với cơ chế bỏ qua việc truyền lại gói. Nó cho phép nhiều ứng dụng với các yêu cầu độ tin cậy khác nhau chạy trên cùng một liên kết luồng. Nói cách khác, nó kết hợp độ tin cậy cao nhất của UDP trong khi vẫn cung cấp khả năng kiểm soát tắc nghẽn giống TCP. SCTP đảm bảo rằng các mẫu IPFIX được gửi đi một cách đáng tin cậy bằng cách cải thiện độ trễ đầu cuối. RFC 6526 giới thiệu các tính năng bổ sung như đếm mẫu bị loại bỏ với độ tin cậy một phần và tái sử dụng mẫu nhanh chóng.
4.2. Cơng cụ phân tích và trực quan luồng lưu lượng 4.2.1. Solarwinds Netflow Traffic Analyzer 4.2.1. Solarwinds Netflow Traffic Analyzer
Solarwinds NetFlow Traffic Analyzer (NTA) là một công cụ phân tích băng thông và lưu lượng mạng, hỗ trợ các công nghệ flow khác nhau bao gồm NetFlow, J-Flow, IPFIX và NetStream.