C 套筒应力试验

C 套筒应力试验,c,linux,sockets,libpcap,C,Linux,Sockets,Libpcap,什么能更好地淹没网络 1-打开http web服务器的一个套接字并写入数据直到崩溃 2-打开多个套接字并写入数据直到崩溃 3-打开套接字并发送tcp数据包,直到崩溃 4-打开多个套接字并发送tcp数据包直到崩溃?达到网络饱和的能力取决于网络状况。编写“泛洪器”的方式可能会减慢速度,因为您会导致中间设备丢弃数据包,而服务器本身最终无法看到其最大负载 应用程序应该从一个连接开始,并监视数据速率。如果所有连接的聚合数据速率继续上升,则继续添加连接。一旦不再上升,您就达到了吞吐量限制。如果它开始下降,则

什么能更好地淹没网络

1-打开http web服务器的一个套接字并写入数据直到崩溃

2-打开多个套接字并写入数据直到崩溃

3-打开套接字并发送tcp数据包,直到崩溃


4-打开多个套接字并发送tcp数据包直到崩溃?

达到网络饱和的能力取决于网络状况。编写“泛洪器”的方式可能会减慢速度,因为您会导致中间设备丢弃数据包,而服务器本身最终无法看到其最大负载

应用程序应该从一个连接开始,并监视数据速率。如果所有连接的聚合数据速率继续上升,则继续添加连接。一旦不再上升,您就达到了吞吐量限制。如果它开始下降,则表示您的系统容量已超过,或者导致拥塞控制启动,或者服务器无法有效处理这么多连接。如果吞吐量限制远低于预期,则可能需要调试网络或调整TCP/socket参数。如果是服务器速度减慢,则需要对其进行分析,以了解其无法处理连接负载的原因


另外,检查每个连接的数据速率,看看某些连接是否比其他连接快得多。如果发生这种情况,那么服务器就有一个公平性问题,也应该解决这个问题。不过,这与服务器和网络性能关系不大,与良好的用户体验关系不大。这种问题的存在可能会在拒绝服务攻击中被利用。

达到网络饱和的能力取决于网络状况。编写“泛洪器”的方式可能会减慢速度,因为您会导致中间设备丢弃数据包,而服务器本身最终无法看到其最大负载

应用程序应该从一个连接开始,并监视数据速率。如果所有连接的聚合数据速率继续上升,则继续添加连接。一旦不再上升,您就达到了吞吐量限制。如果它开始下降,则表示您的系统容量已超过,或者导致拥塞控制启动,或者服务器无法有效处理这么多连接。如果吞吐量限制远低于预期,则可能需要调试网络或调整TCP/socket参数。如果是服务器速度减慢,则需要对其进行分析,以了解其无法处理连接负载的原因


另外,检查每个连接的数据速率,看看某些连接是否比其他连接快得多。如果发生这种情况,那么服务器就有一个公平性问题,也应该解决这个问题。不过,这与服务器和网络性能关系不大,与良好的用户体验关系不大。这种问题的存在可能会在拒绝服务攻击中被利用。

听起来您希望做的是测试web服务器如何对各种类型的拒绝服务攻击做出反应

要考虑的是Web服务器中拒绝服务逻辑是什么,以及如何在Web服务器中典型地实现拒绝服务保护。例如,是否有逻辑来限制并发连接的数量或来自同一IP的并发连接的数量,或者监控通信量,以便在通信量超过某个阈值时对其进行节流或断开连接

要考虑的一点是不要通过TCP/IP套接字推大量字节。web服务器正在解释字节,并希望使用HTTP协议。所以,如果您对HTTP协议以及构建在HTTP上的其他协议执行奇怪和不寻常的操作,会发生什么呢


对于选项3和4,听起来您正在考虑使用其窗口逻辑绕过TCP/IP堆栈,只发送TCP协议数据包流,忽略应答数据包,直到有东西冒烟为止。这更多的是测试服务器上TCP堆栈的健壮性,而不是web服务器本身的健壮性。

听起来您想要做的是测试web服务器如何应对各种类型的拒绝服务攻击

要考虑的是Web服务器中拒绝服务逻辑是什么,以及如何在Web服务器中典型地实现拒绝服务保护。例如,是否有逻辑来限制并发连接的数量或来自同一IP的并发连接的数量,或者监控通信量,以便在通信量超过某个阈值时对其进行节流或断开连接

要考虑的一点是不要通过TCP/IP套接字推大量字节。web服务器正在解释字节,并希望使用HTTP协议。所以,如果您对HTTP协议以及构建在HTTP上的其他协议执行奇怪和不寻常的操作,会发生什么呢

对于选项3和4,听起来您正在考虑使用其窗口逻辑绕过TCP/IP堆栈,只发送TCP协议数据包流,忽略应答数据包,直到有东西冒烟为止。这将更多地测试服务器上TCP堆栈的健壮性,而不是web服务器本身的健壮性