Commit graph

111 commits

Author SHA1 Message Date
Pankaj Garg
86e07049d1 Improve synchronization between client and server. 2025-12-10 11:07:02 -08:00
microsoft-github-policy-service[bot]
b91785b5e8
Auto merge mandatory file pr
This pr is auto merged as it contains a mandatory file and is opened for more than 10 days.
2022-11-28 19:10:48 +00:00
microsoft-github-policy-service[bot]
eced1e6c40
Microsoft mandatory file 2022-09-01 18:05:22 +00:00
Jianhui Zhao
eb6df4d72c
Fix count bandwidth on server. (#162)
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com>
2022-03-13 18:34:34 -07:00
Jef Vantongerloo
a097185b7d
fix go get install path (#150) 2022-03-13 18:33:34 -07:00
Pankaj Garg
aa636603a7
Improve throttling and add Title support (#141) 2020-12-04 16:02:14 -08:00
Pankaj Garg
46d0e6286c
Support for title in test results and improvement to handshake code. (#137)
* Take rate input as bits/s

* Update README.md

* Fix throttling to be as precise as possible.

* Minor doc fix.

* Update README.md

* Add support for title, improve handshake code.

* Update README.md
2020-12-02 02:08:55 -08:00
Pankaj Garg
8f994d1400
Improve throttling and take input as bits/s instead of bytes/s (#136)
* Take rate input as bits/s

* Update README.md

* Fix throttling to be as precise as possible.

* Minor doc fix.

* Update README.md
2020-11-30 21:44:25 -08:00
Pankaj Garg
945d59c33b
Add support for throttling in Bandwidth tests, ToS and improved external mode. (#135)
* Intermediate checkin

* Last check-in before deleting ACK message in Ethr.

* Support for client port, throttling and tos almost working.

* Most functionality working as expected with code all cleaned up.

* Linux/OSX Fixes.

* Fix handshake mechanism.

* Minor cleanup.

* More improvements for external mode.

* Improve admin-mode, root user permission checking.

* Improve detection of IP version for ICMP.

* Update README.md
2020-11-30 18:20:57 -08:00
Pankaj Garg
3d37ac7873
Update README.md 2020-11-24 18:50:47 -08:00
Pankaj Garg
d81e3edd4f
Fix the override of port for ethr mode. (#133)
Co-authored-by: Pankaj Garg <pankaj@intellectualheaven.com>
2020-11-24 18:09:31 -08:00
Pankaj Garg
b4f4f29b94
Update README.md 2020-11-24 09:00:40 -08:00
Pankaj Garg
05f36c63fb
Add IPv6 support for TraceRoute and MyTraceRoute. (#132)
* Add IPv6 support for TraceRoute and MyTraceRoute.

Co-authored-by: Pankaj Garg <pankaj@intellectualheaven.com>
Co-authored-by: Pankaj Garg <ipankajg@l0n3c0d3r.com>
2020-11-24 00:06:46 -08:00
Pankaj Garg
b8f0005dd9
Add TraceRoute and MyTraceRoute functionality for ICMP & TCP. (#131)
Tested on both Windows and Linux and fixed bugs related to handling on Linux.
2020-11-23 18:55:20 -08:00
Pankaj Garg
8de3b2e88a
Merge client & external client mode code. Add ICMP support and many other fixes. (#130)
* Simpler single port version of Ethr working now.

* More simplification to use single port

* Minor changes

* More fixes to enable single port and no control channel sync.

* Further improve code, merge client & xclient, add conn latency for both, pretty print.

* Intermediate change

* Initial traceRoute is working.

* Cleanup MTR functionality.

* Organize help better and add validations.

* Update README.md

* Update README.md

* Make ICMP ping and traceRoute working.

* Update README.md

Co-authored-by: Pankaj Garg <pankaj@intellectualheaven.com>
2020-11-10 05:37:52 -08:00
subham sarkar
58c80e3e6e
Update compatible modules to their latest versions (#127)
Update the packages to their latest compatible versions.
Also ran "go mod tidy" which removed the unused "errors"
package.
2020-09-22 16:30:38 -07:00
subham sarkar
5b05e977f4
Use go build instead of go get (#126)
With the migration to Go Modules, one should avoid the use of the "go get".
2020-09-22 16:29:48 -07:00
subham sarkar
233968d71d
Fix handling of interrupts (#125) 2020-09-22 16:28:41 -07:00
gbmsft
83c2ede294
Add support for TCP CPS in external client mode (#123)
* Add support for TCP CPS in external client mode

* Fix call to xcRunTCPCpsTest
2020-09-04 19:56:22 -07:00
Pankaj Garg
ea28260abc
Flatten the file structure (#115)
* Flatten the file structure

* Fix build errors

Co-authored-by: Pankaj Garg <pankaj@intellectualheaven.com>
2020-06-18 10:07:05 -07:00
Chen Yufei
c1ace168b8
Print 3 digits after decimal point for duration. (#109) 2020-02-25 22:03:24 -08:00
der-onkel
aaae682d51
Ignore interfaces that are down (#110)
Because res was initialized with a size of len(ifs), the UI displayed "empty" interfaces.
2020-02-25 22:02:36 -08:00
der-onkel
cca979577e
Add output of accepted IP version (#111) 2020-02-25 22:02:10 -08:00
Vivek Anand
58ae94e286
Nuget package release changes. (#112)
* Update Readme with nuget release details.

* Ethr.nuspec file for nuget package release.

Creating ethr.nuspec file to release nuget package to nuget.org
2020-02-25 22:00:57 -08:00
scrollins
fe09eed5fb Remove hardcoded buffer of 1 from latency test on server and client(#1) (#103)
* Remove hardcoded buffer of 1 from latency test  on server and client(#1)

* Remove hardcoded buffer of 1 from latency test on server and client

* Default latency test (#2)

* Default latency test so we dont introduce regression
2019-10-18 19:41:46 -07:00
Michael Royal
d8bb7f5796 snap (#102)
Added snapcraft.yaml to build [snap](https://snapcraft.io/).
2019-10-16 15:58:16 -07:00
Boyan Soubachov
912915d5dc Refactor logging (#104)
* Move logging into internal folder & package
* Create enum for logging levels
* Start moving functions into a utils package
2019-10-07 14:24:01 -07:00
Boyan Soubachov
f94ebb5224 Fixed /proc/net/snmp parsing bug (#97)
* Fixed /proc/net/snmp parsing bug

* Fixed a bug when parsing /proc/net/snmp for Linux machines
* Removed unused, commented code
* Changed error messages to Go best practices (wrapping-friendly)

* * Upgrade Dockerfile
* Upgrade to Go 1.13
2019-09-30 05:43:51 -07:00
Boyan Soubachov
47b3fe7ca3 Fix bug incorrectly parsing /proc/net/dev (#96) 2019-09-15 08:24:53 -07:00
Boyan Soubachov
f0074aeb35 Fix Linux build (#94) 2019-08-31 11:31:48 -07:00
Boyan Soubachov
abc44bbbe4 Added linux sanity checking for /proc/net/dev (#93) 2019-08-28 05:41:42 -07:00
Boyan Soubachov
0e781d974b Refactor plotter and stats-gathering functionality (#90)
* Refactor the command line plotting & management code into a package
* Refactor the stats-gathering code into a new package
* Switch to build flags for non-portable packages/code
2019-07-22 20:08:04 -07:00
Boyan Soubachov
82c8007bd9 Fix binary generation for builds (#89)
* Fix the binary building script for TravisCI builds
* Goimports code linting fixes
2019-07-21 07:29:59 -07:00
Boyan Soubachov
2f83ae6fb3 Fix Travis builds (#88)
* Fix Travis builds

* Fix windows build
2019-07-21 01:21:38 -07:00
Boyan Soubachov
1c9b13b30e Refactor command line usage functions (#87)
* Created an internal package as an initial framework for refactoring
* Refactored command line usage functions into the new internal package
2019-07-18 11:30:13 -07:00
Yoshiyuki Kurauchi
90c8f2467c fix error handling in establishSession (#85) 2019-06-05 00:47:51 -07:00
HamidReza Koushki
b1baba1892 Using go module instead of dep (#83) 2019-02-22 15:27:28 -08:00
Deepak Thukral
f5c8cd843e Added support for HTTP latency testing (#81)
* Add support for HTTP latency testing
2019-02-04 09:39:02 -08:00
Pankaj Garg
e87aa83cdc Add support for ignore certificate. (#82)
* Add support for ignore certificate.

Also enhance validaiton for reverse mode.

* Go Fmt
2019-02-03 07:53:54 -08:00
Pankaj Garg
f6785ef1ae
Update README.md 2019-02-02 16:57:54 -08:00
Pankaj Garg
d8fe8e3241
Update README.md 2019-02-02 16:53:58 -08:00
Pankaj Garg
a17a98eaeb Update API key to allow upload. 2019-01-30 05:20:38 -08:00
Pankaj Garg
2e7b9b060f Don't store path in the zip files for releases. 2019-01-30 04:52:03 -08:00
Pankaj Garg
500c4eb894 Add support for automatic build deployment for new versions.
Once a tag is created on the repository, a new build would be produced
and automatically released on github. The version of the build is also
set automatically in the binary using -ldflags option.
2019-01-30 04:38:03 -08:00
Pankaj Garg
65627a0423
Update README.md 2019-01-20 09:21:55 -08:00
Pankaj Garg
7f38d662d2 Add support for reverse mode (for TCP). Fixes (#71) (#73)
Initial version of -r for TCP bandwidth tests + few other enhancements:
- Add timestamp in log messages.
- Handle the case where timer tick is delayed on client side. Server side still
needs work.
- Use high value of GOMAXPROCS to fix starvation of some goroutines.
- Support option to disable per connection statistics. If large number
of sessions are used, then per connection stats were making it hard
to read the results on console.
- Synchronize stats timer between client/server. This makes server and
client print similar test results. Earlier, under varying TCP throuhgput,
results in server and client side were different due to different time
periods for calculating throughput.
2019-01-20 09:13:47 -08:00
Pankaj Garg
a8036a44fd
Improve help output by using custom usage function. (#72) 2019-01-16 08:12:58 -08:00
Pankaj Garg
1da024d74b
Update README.md 2019-01-14 20:09:14 -08:00
Pankaj Garg
6408636f03
Update README.md 2019-01-14 20:07:56 -08:00
Pankaj Garg
2bbee835b2
Load balancer support via External Mode (#70)
* Fix command line arguments to enable supporting external server mode.

* Initial version of external mode server. This can work behind a load
balancer.

* Intermediate changes for xserver/xclient.

* Few fixes for external mode. Add support for 'g' for gap in connection
latency test.
2019-01-14 13:56:36 -08:00