Thuật toán lấy mẫu mô tả quá trình cơ sở lựa chọn các mẫu lưu lượng hiện nay có 3 thuật toán lấy mẫu phổ biến, bao gồm: lấy mẫu hệ thống, lấy mẫu ngẫu nhiê và lấy mẫu phân tầng.
• Lấy mẫu hệ thống
Lấy mẫu hệ thống là quá trình lựa chọn điểm bắt đầu và thời lượng của các khoảng lấy mẫu theo một hàm nhất định. ví dụ, có thể chọn một cách định kỳ phần tử thứ n của dữ liệu đo hoặc chọn tất cả các gói đến tại những thời điểm xác định trước. Trong thực tế có những quá trình lấy mãu mặc dù không theo những hàm tuần hoàn nhưng nếu quá trình lựa chọn được xác định trước thì vẫn gọi là lấy mẫu một cách có hệ thống. Kết quả của thuật toán lấy mẫu hệ thống này mang trong nó nguy cơ hàm sai lệch kết quả phân tích, đặc biệt nếu như tính hệ thống của quá trình lấy mẫu tương đối với tính hệ thống của quá trình ngẫu nhiên quan sát được (là quá trình xảy ra của một đặc tính nào đó trong mạng) thì xác suất kết quả lấy mẫu bị thiên lệch là rất cao.
• Lấy mẫu ngẫu nhiên
Thuật toán lấy mẫu ngẫu nhiên chọn điểm bắt đầu của các khoảng lấy mẫu theo 1 tiến trình ngẫu nhiên, nghĩa là việc lựa chọn các phần tử (lưu lượng) để lấy mẫu là sự kiện độc lập nhau và do đó kết quả dự đoán các thông số lưu lượng gốc trong quá trình phân tích sau này ít thiên lệch hơn. Khác với thuật toán lấy mẫu có
hệ thống, thuật toán này yêu cầu phải có các bộ tạo số ngẫu nhiên, theo đó có hai loại lấy mẫu ngẫu nhiên như sau:
- Lấy mẫu n từ tập N. Như tên gọi của nó, thuật toán này thực hiện lấy mẫu n phần tử từ tập chung N phần tử. Ví dụ, có thể dùng bộ tạo số ngẫu nhiên để tạo ra n số ngẫu nhiên khác nhau trong phạm vi [1,N] sau đó chọn tất cả các gói có vị trí trùng với các số ngẫu nhiên đó. Dễ dàng thấy kết quả lấy mẫu của thuật toán này là tập hợp có kích thước cố địnhN.
- Lấy mẫu theo xác suất. Với thuật toán lấy mẫu dạng này thì việc quyết định lựa chọn một phần tử hay không được thực hiện theo một qui luật xác suất cho trước, ví dụ có thể tung một đồng xu và sẽ chọn tất cả các gói mà đồng xu này hiện mặt ngửa (phân bố Béc nu li), do đó kích thước của tập lấy mẫu theo thuật toán này sẽ có kích thươc thay đổi. Qui luật xác suất cho việc lựa chọn mẫu không nhất thiết phải giống nhau với mọi gói, do đó người ta phân biệt hai kiểu thuật toán lấy mẫu theo xác suất là:
+Lấy mẫu xác suất đồng nhất (qui luật xác suất của tất cả các gói là như nhau) và
+Lấy mẫu xác suất không đồng nhất (qui luật xác suất có thể biến đổi theo từng gói). Trong trường hợp đầu các gói được lựa chọn lấy mẫu một cách độc lập với xác suất đồng nhất là p, và thuật toán này có thể lấy mẫu theo thời gian vì thế thường được gọi là lấy mẫu ngẫu nhiên theo phân bố hình học. Đối với trường hợp thứ hai thì việc lựa chọn lấy mẫu một gói lưu lượng nào đấy có thể thay đổi phụ thuộc các đầu vào của quá trình, thuật toán lấy mẫu loại này thường được dùng trong các trường hợp muốn chú trọng lấy mẫu một số loại gọi hiếm khi xảy ra nhưng lại rất quan trọng. Việc khắc phục sự thiên lệch trong kết quả dự đoán thông số lưu lượng gốc sau này được thực hiện bằng cách tiêu chuẩn hoá các giá trị mẫu. Thực ra thì thuật toán lấy mẫu theo xác suất này còn một kiểu thứ ba nữa đó là lấy mẫu phụ thuộc trạng thái đồng nhất, theo đó việc lựa chọn một gói để lấy mẫu hay không, không chỉ phụ thuộc vào xác suất p của gói đó mà còn phụ thuộc vào trạng thái của luồng thông tin tương ứng của gói đó. Ví dụ: khi xem xét một gói, thì nếu
như nó thuộc một luồng đã tồn tại thì nhất định gói sẽ được lấy mẫu và bản ghi của luồng tương ứng sẽ được cập nhật, còn nếu như nó không thuộc một luồng nào hiện có thì sẽ được lấy mẫu với xác suất p (thay đổi theo từng gói) và một bản ghi luồng mới được tạo ra.
• Lấy mẫu phân tầng
Ý tưởng chính đằng sau thuật lấy mẫu này là nhằm tăng độ chính xác của quá trình phân tích kết quả đo bằng cách sử dụng các thông tin “mặc nhiên”
(priori). Theo đó thuật toán này chia quá trình lấy mẫu thành nhiều bước: bước thứ
nhất các phần tử của tập dữ liệu đo được lấy mẫu trong từng nhóm con này. Độ tương quan giữa các thuộc tính sử dụng để phân loại nhóm và thuộc tính quan tâm (trong quá trình phân tích sau này) càng cao thì quá trình lấy mẫu càng dễ dàng và hệ số phân tầng càng cao. Ví dụ nếu thuộc tính phân loại nhóm dữ liệu chính là đại diện của những thuộc tính lưu lượng cần đo do đó chỉ cần lấy một cách tuỳ ý 1 gói trong mỗi nhóm con.