Tag: 流量

如何在Windows中(在用户模式下)限制应用程序域级别的带宽?

我想发生以下情况: 我的应用程序在Windows机器上运行(称之为应用程序A)。 我可以修改应用程序A的源代码来引入带宽限制。 我希望能够重用我的带宽限制代码并将其放入我拥有的任何其他应用程序中(换句话说,我想尝试在应用程序域级别上限制带宽,以便不必重新考虑因素现有的带宽限制应用程序)。 我想分别限制A的累积上传和下载速度。 例如,如果A分配的最大值为5 Kbps,那么A的所有上传流的上限将达到5 Kbps的累积量。 我的要求: 我不能使用内核模式驱动程序。 我需要在应用程序域级别添加限制。 我试图对此进行研究,特别是在Stack Overflow上,但找不到对我的情况有用的东西: 我已经看到了在Stream对象周围使用ThrottledStream类包装器的示例 ,该对象在使用时会引入限制,但我需要将其置于域级别; 采用这种方法是有问题的,因为它需要我在其他应用程序中重构许多现有代码。 我已经看到这个问题的答案是关于使用Windows过滤平台API的。 不幸的是,我的要求是我绝对不能使用内核模式驱动程序来实现这一点,我的理解是WFP API需要一个。 有没有人知道实现我的特定带宽限制要求的方法,以便在应用程序域级别上限制应用程序?