bomberman icon indicating copy to clipboard operation
bomberman copied to clipboard

SMTP Performance and Load Test Tool

Bomberman

SMTP Performance Test Tool

Build Status Go Report Card

Bomberman Logo

Installation

bomberman requires Go 1.11 or later.

$ go get github.com/c1982/bomberman

or

download

Flags

Flag Desc
host Remote SMTP server with Port. Default: mail.server.com:25
from From email address
to To email address
subject Email subject text
size Set email size Kilobytes (1024 Kilobyte = 1Mbyte). Default: 5Kb
helo SMTP client helo name. Default: mail.server.com
count Email message count. Default: 10
workers Thread workers for SMTP client. Default: 10
jobs Job queue lenght in workers. Default: 10
outbound Outbound IP address for SMTP client
showerror Print SMTP errors
balance Tool is use all IP address for outbound ip with sequental balance. Defalut: false

Server Configuration Checklist

  • Set SPF value in from email address domain.
  • Set PTR record your outbound IP addresses
  • Increase ulimit on your server (ulimit -n 10000)

Usage

Send 50 email to mail.server.com:25 50 workers

./bomberman -host=mail.server.com:25 [email protected] [email protected] -workers=50 -jobs=50 -count=50 -size=75 -balance

Output

Bomberman - SMTP Performance Test Tool
--------------------------------------
Message Count		: 1022
Message Size		: 75K
Error			: 168
Start			: 2018-10-12 06:42:56.808098931 +0300 EEST m=+0.000932257
End			: 2018-10-12 06:43:34.049561955 +0300 EEST m=+37.242392313
Time			: 37.241460056s

Source IP Stats:

10.0.5.216		: 256
10.0.5.222		: 256
10.0.5.238		: 256
10.0.5.239		: 256

Destination IP Stats:

5.4.0.248:25            : 856

SMTP Commands:

DATA (854)	        : min. 775.377638ms, max. 20.662139316s, med. 8.870254307s
DIAL (1022)	        : min. 27.323µs, max. 6.000565014s, med. 1.511920428s
HELO (854)	        : min. 34.061919ms, max. 3.80865823s, med. 343.306129ms
MAIL (854)	        : min. 42.455906ms, max. 6.150506182s, med. 943.313477ms
RCPT (854)	        : min. 34.972014ms, max. 3.151397545s, med. 497.683671ms
SUCCESS (854)           : min. 1.480909163s, max. 37.223728269s, med. 15.673002296s
TOUCH (854)	        : min. 112.109537ms, max. 17.759899662s, med. 3.985871341s

Features

  • Linux/BSD/Windows supported.
  • SMTP RFC 5321 support
  • Outbount IP selection
  • SMTP Command duration min, max, mean metrics
  • Multi-thread support
  • Workers and Job Queue support
  • Balancing outbound ip address automatically
  • Set email body size of Kilobyte
  • Count and Report destination IP changes
  • Count and Report source IP changes

Built With

Author

  • Oğuzhan - MaestroPanel Tech Lead - c1982

ARO

Cemil and Rıza and Osman ^_^