Граф коммитов

624 Коммитов

Автор SHA1 Сообщение Дата
Daiki AMINAKA f6b6e013e6
Remove hardcoded endpoint (#4657)
* Remove string hardcoding

* delete MsQuicTool

* delete pipeline which runs MsQuicTool

* Revert "delete pipeline which runs MsQuicTool"

This reverts commit 1264b21da0.

* Revert "delete MsQuicTool"

This reverts commit dfa4d7288c.

* DomainName as command line parameter
2024-11-19 18:03:44 +00:00
Daiki AMINAKA fd0adfd545
Update MacOS version as macos-12 was deprecated. (#4645) 2024-11-05 08:29:36 +00:00
Nick Banks c8d66e80f8
Max RPS NetPerf Test (#4589) 2024-10-10 15:14:32 +00:00
dependabot[bot] a159816b04
Bump System.Text.Json from 8.0.4 to 8.0.5 in /scripts/generatevpackpat (#4604)
Bumps [System.Text.Json](https://github.com/dotnet/runtime) from 8.0.4 to 8.0.5.
- [Release notes](https://github.com/dotnet/runtime/releases)
- [Commits](https://github.com/dotnet/runtime/compare/v8.0.4...v8.0.5)

---
updated-dependencies:
- dependency-name: System.Text.Json
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-09 06:55:46 -04:00
Jack He f7738fd4b9
Move `quic_callback` to msquic (#4594)
* add quic_callback to msquic

* adjust path
2024-10-04 12:52:21 -07:00
Ahmet Ibrahim Aksoy 56ef97b1fc
Add Alpine packaging and testing github action workflow (#4554) 2024-09-27 13:17:42 +00:00
Nick Banks ee4a1bcfb0
Use Private Nuget Feed for OneBranch (#4557) 2024-09-24 18:59:26 +00:00
Anthony Rossi 4faa8d064c
Log QUIC_TLS_SECRETS on all TestConnections and write to disk on cleanup (#4349)
* Log QUIC_TLS_SECRETS on all TestConnections and have option to write to disk on cleanup.

* Implement kernel mode routine to write sslkeylogfile

* Add sslkeylogfile generation to handshake tests.
2024-08-28 15:29:15 -07:00
Ahmet Ibrahim Aksoy ebc1248826
Integrate Cross Platform Linux Packaging Tester (#4466) 2024-08-18 13:30:29 -04:00
Anthony Rossi 71092039cb
Remove invalid characters from logfile names on non-Windows (#4469) 2024-08-16 13:26:19 -07:00
Ahmet Ibrahim Aksoy 6a37cdcf64
Fix Time64Distro Packaging on GH Actions (#4463) 2024-08-16 09:17:53 -04:00
Daiki AMINAKA 512ed02d8d
Make rpm package for x86_64 (#4459)
* Make rpm package for x86_64

* Accidentally deleted debug flag

* fix syntax

* add azure linux3 arm
2024-08-15 12:58:01 -04:00
Daiki AMINAKA e58b38460b
Publish package to more distros and refactoring (#4455)
* Publish package to more distros and refactoring

* fix?

* fix

* fix

* fix file dependencies

* fix

* fix

* fix

* fix
2024-08-14 20:56:37 +00:00
Ahmet Ibrahim Aksoy dd316f72d7
Delete Prepare Machine and Checkout from Linux Package Testing (#4456)
* Prepare Machine and msquic checkout should not be necessary for testing linux packages

* Install dependencies with package

* Try to fix dependencies

* Fix validated set
2024-08-13 21:56:47 +00:00
Jack He caba7bbf24
Fix HPS test on WSK (#4440)
* enable hps on wsk

* delete commented out code
2024-08-07 18:01:43 -04:00
Daiki AMINAKA d1e9712ddb
remove unnecesary dependencies (#4438) 2024-08-07 11:24:49 -07:00
Daiki AMINAKA b4d79a38c2
Fix package distribution. Specify OS explicitly (#4434)
* Pass OS information explicitly to package-distribution

* libssl3 variants for ubuntu24.04

* detail flag for time64
2024-08-06 22:42:24 +00:00
Jack He 86fb0c58fa
Implement support for Exp. Boost + Refactor secnetperf.ps1 for better usability. (#4423)
* use the updated 3rd party api

* add example callout

* call validate params function to make sure we're good to continue

* wip

* adapt script to use env variables

* fix syntax error

* check status

* eq true

* remove bad log profile

* wip

* make it compatible with powershell 5.1

* make it compatible with powershell 5.1

* make it compatible with powershell 5.1

* make it compatible with powershell 5.1

* make it compatible with powershell 5.1

* make it compatible with powershell 5.1

* make it compatible with powershell 5.1

* xdp on exp. boost test

* xdp on exp. boost test

* xdp on exp. boost test

* xdp on exp. boost test

* xdp on exp. boost test

* xdp on exp. boost test

* xdp on exp. boost test

* xdp on exp boost

* xdp on exp boost wip

* refactor complete wip

* not not windows = is windows

* Update scripts/secnetperf-helpers.psm1

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update scripts/secnetperf-helpers.psm1

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update scripts/secnetperf-helpers.psm1

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update scripts/secnetperf.ps1

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update scripts/secnetperf.ps1

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* print out 'sent special UDP packet'

---------

Co-authored-by: Nick Banks <nibanks@microsoft.com>
2024-08-06 14:18:29 -07:00
Nick Banks 8b86a367c0 Update Minor Version after release/2.4 Fork 2024-08-05 08:31:12 -04:00
Daiki AMINAKA 847a2147d0
add xdp dependencies for publish command (#4424)
* add xdp dependencies for publish command

* ubuntu24.04 packages only for itself

* add ubuntu version parameter

* fix
2024-08-02 14:03:19 -07:00
Nick Banks 4d8a2cad6b
Delete Old, Unused Files (#4411) 2024-07-26 17:15:55 -04:00
dependabot[bot] db86b92d04
Bump System.Text.Json from 6.0.5 to 8.0.4 in /scripts/generatevpackpat (#4395)
Bumps System.Text.Json from 6.0.5 to 8.0.4.

---
updated-dependencies:
- dependency-name: System.Text.Json
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-17 10:05:00 -04:00
Nick Banks 76d315000a
Test on Ubuntu 24.04 GitHub Images (#4306)
* Test on Ubuntu 24.04 GitHub Images

* Dockerfile

* more ubuntu24.04 on yml files

* remove Dockerfile

* update reuse image

* Remove misc-include-cleaner build warnings

* More codecheck ignores

* Missed one

* Fix potential buffer overflow

* rollback fix and ignore the error

* Windows to avoid touching GCC pragma

* the warning should be from gcc13

* static_assert expects its string to be normal

* Revert "static_assert expects its string to be normal"

This reverts commit 73ac2579d1.

* add supress option for clang

* clang version

* fix openssl check issue

* fix yaml

* exclude android

* remove Sanitize for xdp

* support azure pipeline

---------

Co-authored-by: ami-GS <1991.daiki@gmail.com>
2024-07-08 15:01:16 -07:00
Jack He (Github) 8a741dc873
Fix Linux XDP Merge Conflicts Properly (#4369)
* proper fix merge conflicts

* remove unreferenced sudo var
2024-06-24 10:29:59 -07:00
Jack He (Github) f61ad9b5b5
Add infrastructure to enable 2-machine network testing on 1ES Azure pools. (#4364)
* secnetperf script for 1es azure pools

* more debug logging

* fix infinite loop issue

* dumb syntax issue

* remove C:\ remove

* wip

* use config pwsh 7

* skip preparing machine for now

* add support for starting stopping server passively

* fix syntax issue

* create the file

* more logging

* remove ps1 extension

* fix ps1 issue

* get rid of 30s timeout

* NULL in case of Az linux

* wip

* GOAL: Get a successful secnetperf run for linux

* lets get some data

* add stop server logic

* p2p module remove

* ensure we stop using remote pwsh if it's not supported

* get some answers

* print more logs

* && does not exist lmao

* collect me some data

* add run id and stuff

* wrap in a try catch

* wip

* wip

* get some stdout

* forget about core dumps in 1es

* revert 1es change
2024-06-21 12:38:29 -07:00
Anthony Rossi 776a10ee4b
Fix test log path sanitation (#4352) 2024-06-15 00:22:54 -07:00
Anthony Rossi 466d8c9586
Install Perl on Windows via WinGet (#4348)
* Install Perl on Windows via WinGet

---------

Co-authored-by: Nick Banks <nibanks@microsoft.com>
2024-06-14 12:22:26 -07:00
Daiki AMINAKA 971eb6fc58
Retry flaky test (#4332)
* Rety flaky test

* fix variable name

* remove accessing testsuite level property

* fix '==' and message

* update logging message to show how many tests are consistently failing
2024-06-06 21:09:23 -07:00
Daiki AMINAKA 6ead5312d2
Fix HPS test for Linux xdp (#4298)
* increase nofile for sudo. default was 1024

* enable linux XDP HPS test

* use bash instead of pwsh

* use internally pwsh

* try full path for bash

* print stderr to see pipeline specific issue

* use file

* print output

* rollback and ccommentout throw

* print

* set LD_LIBRARY_PATH

* print more

* accelerate

* export

* rollback

* 'Args' should not be used. it become empty

* print parameters

* test

* cleanup

* use limits.conf for ulimit setting
2024-06-04 11:23:01 -07:00
Daiki AMINAKA cd5019f2de
block installing Linux XDP dependencies unless setting -UseXdp (#4327) 2024-05-29 08:26:34 -07:00
Daiki AMINAKA e3135cf0ed
show warning prompt for installing Linux XDP deps (#4302)
* show warning for installing Linux XDP deps

* change force flag name

* Fix yml to use ForceXdpInstall

* unify

* try single quote

* remove redundant xdp flag

* fix renux packaging
2024-05-24 18:40:10 -07:00
Daiki AMINAKA 0a29701afc
Use -UseXdp for github pipeline (#4317)
* Use -EnableLinuxXDP

* add EnableLinuxXDP for 'Build'

* fix ternary operator

* add 'XDP' to build artifact name

* fix?

* fix?

* fix?

* fix?

* fix

* fix

* exclude x86

* specify '-XDP' artifacts

* fix

* fgix

* specify 'xdp' for all cases

* unify xdp flag as -UseXdp

* fix matrix.vec.xdp

* fix a bit
2024-05-23 05:18:53 -07:00
Marie Píchová 057677627a
Fix broken build on Alpine (#4264) 2024-05-14 12:48:28 -04:00
Nick Banks d67768772a
Disable Linux XDP HPS (#4292) 2024-05-09 09:15:32 -07:00
Daiki AMINAKA b4b3f98cf0
Secnet perf to set LD_LIBRARY_PATH for sudo (#4290)
* pass LD_LIBRARY_PATH to remote

* set LD_LIBRARY_PATH
2024-05-08 12:52:22 -07:00
Daiki AMINAKA 4b08a11c99
Enable secnetperf with xdp on azure VM (#4262)
* enable secnetperf with xdp on azure VM

* remove redundant settings

* move sudo inside script

* cleanup

* add 'sudo' in Invoke-Secnetperf

* cleanup

* Few minor fixes

* Change back

* touch ethtool only when ubuntu-22.04

* cleanup xdpgeneric and remote

* cleanup if xdp is there

* add XDP flag for execution config

* fix for DataPathTest

* remove MSQUIC_ENABLE_XDP flag

* remove Status

* remove local variable

* make FLAG_XDP visible from DataPathTest.cpp

* define preview feature

* fix RebindAddrPadded bug

* make RebindDatapathAddr to duonic dependent

* Use appropriate default values

* rollback

* fix memory leak

---------

Co-authored-by: Ubuntu <daiki@f4-ubuntu22-02.lcaeom4kylsuvmegib5mitghvd.bx.internal.cloudapp.net>
Co-authored-by: Nick Banks <nibanks@microsoft.com>
2024-05-01 16:42:02 -07:00
Jack He (Github) 28cceb2201
Adds retry logic to creating Secnetperf remote powershell sessions (#4265)
* add 5 tries

* add sleep
2024-04-26 13:48:27 -07:00
Daiki AMINAKA 5052f34623
Linux XDP support (#3849)
* built on Linux

* ne files

* renaming

* split socket funcs

* refactor from win

* build from linux

* more on linux

* rename and generate

* use libbpf

* oops

* rebase and add new member

* unify CxPlatTryAddSocket

* pass datapath tests

* integrate Ubuntu 22.04 default libbpf v0.5.0

* temporally

* multithread. all test passed

* secnetperf works

* update build scripts

* nit update

* add duonic installer script for linux

* add xdp-tools directory

* cleanup

* fix Windows build

* fix windows xdp build

* add Github action

* nit fix

* fix dependencies for Install-DuoNic

* add udpate

* add linux xdp dependencies to docker file

* fix installation script

* initialize submodules/xdp-tools recursively

* temporal fix

* make XDP optional

* use ShutdownSqe

* fix yaml files

* remove gcc-multilib and include explicitly

* fix tcp socket to allocate raw

* install xdp deps for linux

* libxdp bug workaround

* oops

* fix idempotency and add one more dep

* TODO: remove this

* enable x86_64 and Ubuntu22.04

* fix type mismatch of uint16_t and UINT16

* add aarch64

* fix

* use flag

* change arch check and file copy

* fix static build and android

* update clog

* clog fix

* fix Clang link issue

* fix CodeCheck and prepare-machine for build

* disable ANDROID for xdp

* fix clog

* Support XDP from 'test.ps1 -UseXdp'

* link libxdp from artifact

* fix dependency

* fix dep

* update xdp-tools to v1.4.2

* fix runtime deps

* fix deps

* Fix Umem addressing and make Rx path async to efficiently fill FQ

* fix CodeQL analyze deps

* fix Analyze

* fix analyze

* linux xdp to use sudo

* change 'if' order

* path fix?

* sudo pwsh

* add retry for xsk_socket__create when returns -EBUSY

* cleanup xdp program before running

* Fix cargo build --all

* fix cargo test dynamic linking

* remove Sanitize for initial commit

* generate artifact

* fix yml syntax issue

* fix CodeQl Analysys

* forget to add Partition declaration

* Use Rundown to wait for deleting socket before binding next

* fix Rundown for all xdp socket

* Fix EBUSY issue when binding xdp socket

* explictly disable port sharing test

* refactoring and cleanup

* fix pipeline. else for normal linux socket

* Fix cargo linking issue?

* disable xdp for cargo build

* fix codeql

* rollback build.rs

* fix package runtime link and codeql

* wrap packet dump function to DEBUG macro

* check dependency

* another check

* leave only LD_LIBRARY_PATH

* iterate attach mode

* fix codeql

* add IP address check in XDP prog

* break is enough & avoid compiler bug

* fix CodeCheck

* Fix use of RxHeadroom

* fix umem leak when failed to initialize

* use pool alloc for Interface

* fix ipv4 check

* remove workaround

* cleanup. from snake case to pascal case

* fix clog

* try ubuntu20.04 and enable stress test

* few fix of stress test yml

* integrate package libxdp linking

* fix RX parse error case

* disable ubuntu20.04

* remove 2 env variable to run

* add document

* fix ForBuild && clog

* stop installing deps on Ubuntu 20.04

* fix build

* fix libc6-dev-i386 side effect

* Add one more dependency (libzstd) for static build

* new line fix

* always install libc6-dev-i386

* fix install order

* fix CMakeLists.txt to cover qns.Dockerfile case

* remove env var dep, update doc

* fix stress.yml

* add env var for xdp knob and fix stress

* fix stress

* update clog

* update doc

* Fix doc appearance and words

* add UseXdp

* Update docs/BUILD.md

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update docs/BUILD.md

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* use SKB mode for now

* move Linux XDP logging to TSG.md

* stop warning print from libxdp/libbpf

* move CxPlat definitions to each plat

* initial commit

* common xdp utilities

* move sudo inside scripts

* fix comments

* fix clog

* fix ifdef syntax

* fix annotations

* all arch to build dataptah_xplat.c

* fix mac build

* fix lisence of ebpf prog

* fix spin.ps1 to propagate parameter

* Ether and IPv6 was not set appropriately

* Update docs/TSG.md

* remove warning supression

* remove BuildLibXdpFromSource

---------

Co-authored-by: ami-GS <azureuser@node1.s4l0gsbs5l2efgb53yvjusshdg.xx.internal.cloudapp.net>
Co-authored-by: Nick Banks <nibanks@microsoft.com>
2024-04-25 13:03:44 -07:00
Christopher Pestano 50b16dc68f
Cpestano/bug fix relative paths (#4248) 2024-04-18 07:28:10 -04:00
Jack He (Github) 7d64cd260f
revert appdata changes (#4232)
Co-authored-by: Jack He <jackhe@microsoft.com>
2024-04-08 13:43:27 -04:00
Daiki AMINAKA 680c5b93a7
Fix pkg-config for x86 (#4226) 2024-04-04 22:10:45 -07:00
Daiki AMINAKA b8ca418b8e
Fix pkgconfig setting to link with pkg-config (#4225) 2024-04-04 13:40:51 -07:00
Jack He (Github) e7b897d066
Implement workaround for log.ps1 not working on Lab Linux (#4224)
* remove sudo

* try without cancelling logging

* cancel logging only for windows

---------

Co-authored-by: Jack He <jackhe@microsoft.com>
2024-04-03 14:54:51 -07:00
Jack He (Github) cd3730815e
Log.ps1 should remove AppData ETL buildup (#4223)
* add appdata removal logic

* remove uneeded logging

---------

Co-authored-by: Jack He <jackhe@microsoft.com>
2024-04-02 22:41:09 +00:00
Jack He (Github) b540c5f057
Add logic to remove any logging residue. (#4222)
* add logic to remove any ETL residue

* cancel instead of delete

* cancel instead of stop

---------

Co-authored-by: Jack He <jackhe@microsoft.com>
2024-04-02 15:31:09 -07:00
Nick Banks 81d39cd6c8
Support Native Compiler in OneBranch Builds (#4217) 2024-03-29 14:16:57 -04:00
Jack He (Github) 7bf265f6d3
Persist BestResult / BestResultCommit / Baseline for all results, regardless of regression. (#4201)
* persist bestResult baseline for all keys

* don't return N/A on good runs

* fix small bugs

* update error messages

---------

Co-authored-by: Jack He <jackhe@microsoft.com>
2024-03-18 13:36:53 -07:00
Jack He (Github) cacfccae19
Implement watermark idea (reopen PR) (#4193)
* add function implementation for latency regression

* use watermark json

* baseline is BS

* improve error messages

* bored on a Friday

* move helpers to the modules file

* fix parameter bug

---------

Co-authored-by: Jack He <jackhe@microsoft.com>
2024-03-14 12:00:51 -07:00
Gaurav Singh 1a32822791
Fuzz Handshake packet (#4074)
* receive packet

* populated the packet struct

* added ACK frame sending

* Initial ACK frame response sent

* added handshake decryption

* Completed handshake decryption

* finshed processing handshake packet

* fuzzed handshake packet and sent

* fixed Read key not available bug

* fixed a bug

* Testing to see if pipelines passes

* pop packet when decryption fail

* minor change

* only free packet after we are done processing

* attempt to fix the pipeline

* packet copy is sent

* recv event modified

* zeroed out send buffer

* minor change

* minor

* free packet event

* redefined few variables to fix memory leak

* minor change

* fixed recv datagram bug

* attempt to fix the pipeline

* test

* added few checks

* minor change

* minor change

* debug statement

* some debug statements for the pipeling

* minor change

* Few fixes

* minor

* added allocated check

* chain processing changed

* cleaned up code

* minor change

* minor change

* minor change

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* minor code cleanups:

* mode changes

* minor

* made initial packet and handshake packet fuzzing work together

* minor change

* debug

* minor change

* minor change

* minor change

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* minor change

* few cxplatevent changes

* few minor changes

* handle failure

* minor

* few minor things

* delete state buffer after every iteration

* minor

* minor

* test change

* minor change

* minor change

* added startms

* added result flag

* cleanup code and few debug statements

* cleanup

* Made packet as stack variable

* reverted change

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* resolved comments

* fixed potential memory leak

* Update src/tools/recvfuzz/recvfuzz.cpp

Co-authored-by: Nick Banks <nibanks@microsoft.com>

* resolved comments

* New handshake each iteration

* removed unnecessary comment

* minor change

* minor change

* Some modifications

* fixed memory leaks

* minor change

* freed up send data

* revert

* revert

* minor change

* minor changes

* test

* add free send data

* rest

* modified implementation

* minor change

* few optimisations

* attempt to fix

* added ASAN option

* resolved comments

* minor refactoring

* minor change

---------

Co-authored-by: Nick Banks <nibanks@microsoft.com>
2024-03-12 18:39:38 +05:30
Jack He (Github) 95941f391a
generate results on regression (#4178)
Co-authored-by: Jack He <jackhe@microsoft.com>
2024-03-06 17:23:31 -08:00