diff --git a/.github/workflows/common-performance.yml b/.github/workflows/common-performance.yml index 6f21fd66..151cd430 100644 --- a/.github/workflows/common-performance.yml +++ b/.github/workflows/common-performance.yml @@ -53,6 +53,11 @@ on: type: string default: 'reno' required: false + slowstart: + description: 'CC Slowstart algorithm to use (if supported by the backend)' + type: string + default: 'basic' + required: false ignore_caches: description: 'resets caches to force new build' type: boolean @@ -132,6 +137,7 @@ jobs: $config = $config.replace('','${{ inputs.client_listen_address }}') $config = $config.replace('','${{ inputs.backend }}') $config = $config.replace('','${{ inputs.cca }}') + $config = $config.replace('','${{ inputs.slowstart }}') $config > ./build/config/qpep.yml write-host $config Copy-Item "./windivert/x64/*" -Destination "./build" @@ -174,7 +180,7 @@ jobs: strategy: max-parallel: 1 matrix: - download_size: [ 5, 10 ] + download_size: [ 10 ] connections_number: [ 1, 4 ] env: REMOTE_GATEWAY: ${{ inputs.server_public_address }} @@ -287,6 +293,7 @@ jobs: QPEP_REV: HEAD QPEP_BACKEND: ${{ inputs.backend }} QPEP_CCA: ${{ inputs.cca }} + QPEP_SLOWSTART: ${{ inputs.slowstart }} steps: - name: Pre-Cleanup run: | diff --git a/.github/workflows/performance.yml b/.github/workflows/performance.yml index 780f41f9..b3ac8f26 100644 --- a/.github/workflows/performance.yml +++ b/.github/workflows/performance.yml @@ -89,11 +89,17 @@ jobs: max-parallel: 1 matrix: backend: [ 'quic-go', 'quicly-go' ] - cca: [ 'reno', 'search' ] - connection_delay_ms: [ 0, 500 ] + cca: [ 'reno' ] + slowstart: [ 'search' ] + connection_delay_ms: [ 0 ] + # cca: [ 'reno', 'cubic' ] + # slowstart: [ 'search', 'basic' ] + # connection_delay_ms: [ 0, 500 ] exclude: - backend: 'quic-go' - cca: 'search' + slowstart: 'search' + - backend: 'quic-go' + cca: 'cubic' uses: './.github/workflows/common-performance.yml' with: server_public_address: ${{ inputs.server_public_address }} @@ -103,4 +109,5 @@ jobs: ignore_caches: ${{ inputs.ignore_caches }} backend: ${{ matrix.backend }} cca: ${{ matrix.cca }} + slowstart: ${{ matrix.slowstart }} secrets: inherit diff --git a/docker/client-env/qpep.yml.tpl b/docker/client-env/qpep.yml.tpl index 05293fd2..839a2e00 100644 --- a/docker/client-env/qpep.yml.tpl +++ b/docker/client-env/qpep.yml.tpl @@ -9,6 +9,7 @@ listenport: 9443 # backend backend: ccalgorithm: +ccslowstart: # certificate certificate: server_cert.pem diff --git a/docker/server-env/docker-compose.yml b/docker/server-env/docker-compose.yml index ffce35e6..db22e920 100644 --- a/docker/server-env/docker-compose.yml +++ b/docker/server-env/docker-compose.yml @@ -18,6 +18,7 @@ services: environment: - QPEP_BACKEND=${QPEP_BACKEND} - QPEP_CCA=${QPEP_CCA} + - QPEP_SLOWSTART=${QPEP_SLOWSTART} build: context: server/ args: diff --git a/docker/server-env/server/Dockerfile b/docker/server-env/server/Dockerfile index 9ec418cd..3e12fbcf 100644 --- a/docker/server-env/server/Dockerfile +++ b/docker/server-env/server/Dockerfile @@ -8,6 +8,7 @@ ENV GOPATH "/opt/gopath" ENV BUILDKIT_PROGRESS "plain" ENV QPEP_BACKEND="quic-go" ENV QPEP_CCA="reno" +ENV QPEP_SLOWSTART="basic" ARG GO_VERSION="1.20.14" ARG QPEP_REPO="https://github.com/Project-Faster/qpep.git" diff --git a/docker/server-env/server/config/qpep.yml.tpl b/docker/server-env/server/config/qpep.yml.tpl index b101320b..8d776486 100644 --- a/docker/server-env/server/config/qpep.yml.tpl +++ b/docker/server-env/server/config/qpep.yml.tpl @@ -9,6 +9,7 @@ listenport: 1443 # backend backend: ${QPEP_BACKEND} ccalgorithm: ${QPEP_CCA} +ccslowstart: ${QPEP_SLOWSTART} # certificate certificate: server_cert.pem