Skip to content

Commit 6f9c90c

Browse files
authored
Merge pull request #14 from galbarnahum/dev
improved h2load flood and benign client
2 parents 3f82675 + 85f497f commit 6f9c90c

3 files changed

Lines changed: 14 additions & 4 deletions

File tree

tools/evaluate.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ func EvaluateMadeYouReset(config *ToolConfig) error {
8181
configForFloodAttacker.OutputFilename = "h2load.log"
8282
configForFloodAttacker.Verbose = true
8383
configForFloodAttacker.RequestsPerClient = 0
84+
configForFloodAttacker.ShowProgressbar = true
8485
FloodAttackStats, err := RunH2load(&configForFloodAttacker, nil)
8586
if err != nil {
8687
return fmt.Errorf("failed to run h2load: %v", err)

tools/h2load.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,9 @@ func h2loadRequestStatsToRunnerResult(stats *h2load.RequestStats, clientsNum int
151151
}
152152

153153
func RunH2load(toolConfig *ToolConfig, h2loadConf *h2load.H2loadConf) (*RunnerResult, error) {
154+
if toolConfig.OutputFilename == "" {
155+
toolConfig.OutputFilename = "h2load.log"
156+
}
154157
logger, err := getLogger(toolConfig, toolConfig.OutputFilename)
155158
if err != nil {
156159
return nil, err
@@ -186,7 +189,7 @@ func RunH2load(toolConfig *ToolConfig, h2loadConf *h2load.H2loadConf) (*RunnerRe
186189
h2loadConf.URL = h2loadURL
187190
h2loadConf.ServerAddress = serverConf.ServerAddress
188191
h2loadConf.Protocol = serverConf.Protocol
189-
return runH2load(h2loadConf, toolConfig.TestDuration, logger, toolConfig.Verbose)
192+
return runH2load(h2loadConf, toolConfig.TestDuration, logger, toolConfig.ShowProgressbar)
190193
}
191194

192195
/*

tools/tools.go

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99
"strings"
1010
"time"
1111

12+
"github.com/galbarnahum/h2loadGo/h2load"
1213
"github.com/galbarnahum/remoteSystemStatsMonitor/stats"
1314
)
1415

@@ -154,10 +155,15 @@ func RunTool(config *ToolConfig) error {
154155
// Start h2load in background
155156
h2loadBgCh = make(chan *RunnerResult)
156157
go func() {
157-
waitForAttackTime := time.Second * 3
158+
waitForAttackTime := time.Second * 7
158159
time.Sleep(waitForAttackTime)
159160
configForH2load.TestDuration = config.TestDuration - waitForAttackTime
160-
h2loadStats, err := RunH2load(&configForH2load, nil)
161+
h2loadConf := h2load.H2loadConf{
162+
ConcurrentStreams: 100,
163+
Rps: 1,
164+
RpsMode: h2load.RpsModeEven,
165+
}
166+
h2loadStats, err := RunH2load(&configForH2load, &h2loadConf)
161167
if err != nil {
162168
log.Printf("h2load error: %v", err)
163169
}
@@ -173,7 +179,7 @@ func RunTool(config *ToolConfig) error {
173179
return fmt.Errorf("failed to run SSHMonitor: %v", err)
174180
}
175181
}
176-
182+
config.ShowProgressbar = true
177183
runModeResult, err := RunMode(config)
178184
if err != nil {
179185
return fmt.Errorf("failed to run %s: %v", config.Mode, err)

0 commit comments

Comments
 (0)