Skip to content

Commit

Permalink
Increase consent check and inactivity intervals. (#2044)
Browse files Browse the repository at this point in the history
* Bump consent check and inactivity intervals.

* Add missing whitespace in reference.conf.

* chore: Update ice4j.
  • Loading branch information
bgrozev authored Aug 24, 2023
1 parent 194c8f7 commit a8d8a78
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 32 deletions.
4 changes: 2 additions & 2 deletions jvb/src/main/resources/application.conf
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# This file contains overrides for libraries JVB uses
ice4j {
consent-freshness {
// Sends "consent freshness" check every 3 seconds
interval = 3 seconds
// Sends "consent freshness" check every 5 seconds.
interval = 5 seconds
// Retry max 5 times which will take up to 2500ms, that is before the next "consent freshness" transaction starts.
max-retransmissions = 5
}
Expand Down
57 changes: 28 additions & 29 deletions jvb/src/main/resources/reference.conf
Original file line number Diff line number Diff line change
@@ -1,54 +1,54 @@
videobridge {
entity-expiration {
# If an entity has no activity after this timeout, it is expired
timeout=1 minute
timeout = 1 minute

# The interval at which the videobridge will check for expired entities
check-interval=${videobridge.entity-expiration.timeout}
check-interval = ${videobridge.entity-expiration.timeout}
}
health {
# The interval between health checks
interval=1 minute
interval = 1 minute

# The timeout for a health check. This needs to be higher than [interval], otherwise health checks timeout because
# none were scheduled.
timeout=90 seconds
timeout = 90 seconds

# If performing a health check takes longer than this, it is considered unsuccessful.
max-check-duration=3 seconds
max-check-duration = 3 seconds

# Whether or not health check failures should be 'sticky'
# (i.e. once the bridge becomes unhealthy, it will never
# go back to a healthy state)
sticky-failures=false
sticky-failures = false
}
ep-connection-status {
# How long we'll wait for an endpoint to *start* sending
# data before we consider it 'inactive'
first-transfer-timeout=15 seconds
first-transfer-timeout = 15 seconds

# How long an endpoint can be 'inactive' before it will
# be considered disconnected
max-inactivity-limit=3 seconds
max-inactivity-limit = 8 seconds

# How often we check endpoint's connectivity status
check-interval=500 milliseconds
check-interval = 500 milliseconds
}
cc {
bwe-change-threshold=0.15
thumbnail-max-height-px=180
onstage-ideal-height-px=1080
onstage-preferred-height-px=360
onstage-preferred-framerate=30
bwe-change-threshold = 0.15
thumbnail-max-height-px = 180
onstage-ideal-height-px = 1080
onstage-preferred-height-px = 360
onstage-preferred-framerate = 30
// Whether the bridge is allowed to oversend (send the lowest layer regardless of BWE) for on-stage endpoints. If
// allowed, it's only used when an endpoint is screensharing.
allow-oversend-onstage=true
allow-oversend-onstage = true
// The maximum bitrate by which the estimation will be exceeded when oversending (if oversending is allowed).
max-oversend-bitrate=500 kbps
trust-bwe=true
max-oversend-bitrate = 500 kbps
trust-bwe = true

# How often we check to send probing data
padding-period=15ms
padding-period = 15ms

# How often we'll run bandwidth re-allocation. This is in addition to re-allocating when otherwise required (e.g.
# a new endpoint joins or the available layers change).
Expand Down Expand Up @@ -143,16 +143,16 @@ videobridge {
}
relay {
# Whether or not relays (octo) are enabled
enabled=false
enabled = false

# A string denoting the 'region' of this JVB. This region will be used by Jicofo in the selection of a bridge for
# a client by comparing it to the client's region.
# Must be set when 'enabled' is true.
#region="us-west-1"
#region = "us-west-1"

# The unique identifier of the jitsi-videobridge instance as a relay.
# Must be set when 'enabled' is true.
#relay-id="jvb-1234"
#relay-id = "jvb-1234"
}
load-management {
# Whether or not the reducer will be enabled to take actions to mitigate load
Expand All @@ -172,8 +172,7 @@ videobridge {
reduction-scale = .75
# The factor by which we'll increase the current last-n when trying to recover
recover-scale = 1.25
# The minimum time in between runs of the last-n reducer to reduce or recover from
# load
# The minimum time in between runs of the last-n reducer to reduce or recover from load
impact-time = 1 minute
# The lowest value we'll set for last-n
minimum-last-n-value = 1
Expand All @@ -200,22 +199,22 @@ videobridge {
}
sctp {
// Whether SCTP data channels are enabled.
enabled=true
enabled = true
}
stats {
// The interval at which stats are gathered.
interval = 5 seconds
}
websockets {
enabled=false
server-id="default-id"
enabled = false
server-id = "default-id"
// Whether to negotiate WebSocket compression (permessage-deflate)
enable-compression = true

// Optional, even when 'enabled' is set to true
#tls=true
#tls = true
// The domains used when advertising a colibri-ws URL. Must be set when enabled = true
domains= []
domains = []
// The domain used when advertising a colibri-relay-ws URL. If empty defaults to the value of `domains`.
relay-domains = []
}
Expand Down Expand Up @@ -272,7 +271,7 @@ videobridge {
# 100pps for low-definition, last-n 20 and 2 participants talking, so
# 2*50pps for audio, this queue is fed 300+19*100+2*50 = 2300pps, so its
# size in terms of millis is 1024/2300*1000 ~= 445ms.
queue-size=1024
queue-size = 1024
}
}

Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>ice4j</artifactId>
<version>3.0-58-gf41542d</version>
<version>3.0-63-g9fe2d69</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
Expand Down

0 comments on commit a8d8a78

Please sign in to comment.