Model SOCK_OPS flow lifetime independently of classify execution
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Tái cấu trúc
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- cpp
- Lĩnh vực
- networking, testing-qa
Hướng nghiên cứu
Start from the simulated SOCK_OPS APIs, where flow ID creation and the synchronous WFP classify call happen in one operation, and from the flowDeleteFn path for associated contexts. Split creation, classification for an existing flow ID, and deletion into separate operations, keeping the synchronous helpers as wrappers. Done means IPv4 and IPv6 tests delete a flow before, during, and after classification, with exactly one flowDeleteFn callback per associated context.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
The simulated SOCK_OPS APIs create a flow ID and synchronously invoke the WFP classify callback in one operation. The caller does not regain control until classification completes, so a test cannot publish the simulated flow as live and delete that same flow while its established callback is running.
This prevents usersim from faithfully modeling independent WFP flow creation, classification, and deletion, and leaves the original SOCK_OPS association/program-invocation race difficult to regression-test without test-only synchronization inside the program callback.
Originating review: https://github.com/microsoft/ebpf-for-windows/pull/5623#discussion_r4450724952
Desired behavior
Represent a simulated network flow separately from an optional WFP flow-context association. Tests should be able to:
- Create a flow and receive its flow ID.
- Invoke classification for that existing flow ID.
- Delete the flow before, during, or after classification.
The existing synchronous helpers can remain as compatibility wrappers over the split operations.
Acceptance criteria
- IPv4 and IPv6 SOCK_OPS flows can be created before classification begins.
- Classification accepts an existing flow ID rather than always allocating one internally.
- Flow deletion is safe before association, during classification, and after association.
- An associated context receives exactly one
flowDeleteFncallback. - Existing usersim callers retain compatible behavior.
- Tests cover the three deletion timings for both address families.
- Ngôn ngữ chính
- C++
- Star
- 112
- Fork
- 36
- Merge trung bình
- 8 ngày 10 giờ
- Pull request đã merge (30 ngày)
- 6
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của microsoft/usersim
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 18/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 42/100
-
Dependency DashboardĐang mởtriaged
Độ khó 3/5 Nửa ngày Mức phù hợp với người mới 15/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
-
Duplicate cxplat codeĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
Tất cả issue của microsoft/usersim
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Niko1221/Strata#5560 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 4 ngày
-
NVIDIA windows
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Maintainer thường phản hồi trong vòng 1 ngày
-
[辞書] C/C++のプリプロセッサ指令名を英字のままにするĐang mở要トリアージ 辞書
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 86/100
yksr-melt/Meltype#1625 · 1 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[yugabyted] xcluster set_up and add_to_replication fail for database names containing - . or (Đang mởkind/bug priority/medium qa_automation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
yugabyte/yugabyte-db#37324 ·
Maintainer thường phản hồi trong vòng 1 ngày