Vấn đề về hiệu năng iptables / conntrack của Linux


9

Tôi có một thiết lập thử nghiệm trong phòng thí nghiệm với 4 máy:

  • 2 máy P4 cũ (t1, t2)
  • 1 Xeon 5420 DP 2,5 GHz RAM 8 GB (t3) Intel e1000
  • 1 Xeon 5420 DP 2,5 GHz RAM 8 GB (t4) Intel e1000

để kiểm tra hiệu năng tường lửa linux vì chúng tôi đã bị cắn bởi một số cuộc tấn công đồng bộ trong những tháng qua. Tất cả các máy chạy Ubuntu 12.04 64 bit. t1, t2, t3 được kết nối với nhau thông qua công tắc 1GB / s, t4 được kết nối với t3 thông qua giao diện phụ. Vì vậy, t3 mô phỏng tường lửa, t4 là mục tiêu, t1, t2 đóng vai kẻ tấn công tạo ra một gói dữ liệu thorugh (192.168.4.199 là t4):

hping3 -I eth1 --rand-source --syn --flood 192.168.4.199 -p 80

t4 bỏ tất cả các gói đến để tránh nhầm lẫn với các cổng, các vấn đề về hiệu năng của t4, v.v. Tôi xem các số liệu thống kê gói trong iptraf. Tôi đã cấu hình tường lửa (t3) như sau:

  • stock 3.2.0-31-kernel # 50-Ubuntu SMP kernel
  • rhash_entries = 33554432 làm tham số kernel
  • sysctl như sau:

    net.ipv4.ip_forward = 1
    net.ipv4.route.gc_elasticity = 2
    net.ipv4.route.gc_timeout = 1
    net.ipv4.route.gc_interval = 5
    net.ipv4.route.gc_min_interval_ms = 500
    net.ipv4.route.gc_thresh = 2000000
    net.ipv4.route.max_size = 20000000
    

(Tôi đã điều chỉnh rất nhiều để giữ cho t3 chạy khi t1 + t2 đang gửi càng nhiều gói càng tốt).

Kết quả của những nỗ lực này có phần kỳ lạ:

  • t1 + t2 quản lý để gửi mỗi gói khoảng 200k / s. t4 trong trường hợp tốt nhất nhìn thấy tổng cộng 200 nghìn nên một nửa các gói bị mất.
  • t3 gần như không sử dụng được trên bàn điều khiển mặc dù các gói đang chảy qua nó (số lượng lớn các phần mềm mềm)
  • trình thu gom rác bộ đệm tuyến đường không thể dự đoán được và trong cài đặt mặc định bị quá tải bởi rất ít gói / s (<50k gói / s)
  • kích hoạt các quy tắc iptables có trạng thái làm cho tốc độ gói đến trên t4 giảm xuống khoảng 100 nghìn gói / giây, mất hoàn toàn hơn 75% các gói

Và đây - đây là mối quan tâm chính của tôi - với hai máy P4 cũ gửi càng nhiều gói càng tốt - điều đó có nghĩa là gần như tất cả mọi người trên mạng đều có khả năng này.

Vì vậy, đây là câu hỏi của tôi: Tôi đã bỏ qua một số điểm nhập khẩu trong cấu hình hoặc trong thiết lập thử nghiệm của tôi? Có sự thay thế nào cho việc xây dựng hệ thống tường lửa đặc biệt là trên các hệ thống smp không?


Có thể bạn đang bão hòa mạng? Điều đó sẽ giải thích một số mất gói.
Preston

Tôi không nghĩ như vậy vì mạng trên 1Gb / s được kết nối thông qua công tắc hp 2848, điều khiển luồng trên và bộ đệm bộ đệm tải và tuyến đường cao tràn vào t3 chỉ ra rằng chính t3 là điểm yếu.
tim

Câu trả lời:


1

Tôi sẽ chuyển sang Kernel> = 3.6 mà không còn bộ đệm định tuyến. Điều đó sẽ giải quyết một phần vấn đề của bạn.


0

Làm thế nào là thiết lập đăng nhập của bạn trên T3? Nếu tất cả các gói bị rơi được ghi lại, I / O đĩa có thể là nguyên nhân.

Vì đây là môi trường thử nghiệm, bạn có thể thử kiểm tra với tính năng ghi nhật ký T3 đã tắt.

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.