twamp-server.conf(5)
πΈ twamp-server.conf(5) β the config file that gives twampd its whole setup πΈ
okay bestie, gather round: this is twamp-server.conf(5), the manual page for the config file behind twampd(8). Itβs giving βserver settings but make it a text file,β and honestly itβs iconic. π
π NAME π
twamp-server.conf β Two-way active measurement daemon configuration file. Periodt.
β¨ DESCRIPTION β¨
The twamp-server.conf file is the configuration file for the twampd(8) daemon. It is used to configure the basic operation of the server β for example, what addresses and ports it should listen on, where it should send error messages, and where it should save files.
The policy rules for twampd are configured using the twamp-server.limits file; the details for configuring those policies are described in the twamp-server.limits(5) manual page. Yes, thatβs a whole separate bestie β go read it. π«Ά
The format of this file is:
- Comment lines are any line where the first non-whitespace character is
#. These lines are counted for the purposes of returning line numbers in error messages but are otherwise ignored bytwampd. - Lines may be continued using the semi-standard
'\'character followed immediately by a newline character. This is the only valid place for the'\'character. If it is found elsewhere, a syntax error is reported. - Blank lines are treated as comment lines.
- All other lines are used to set configuration options. The format of these lines is an initial keyword followed by a variable list of arguments, separated by whitespace.
π«Ά CONFIGURATION OPTIONS π«Ά
authmode authmodeβ Specify the authentication modes the server is willing to use for communication.authmodeshould be set as a character string, with any or all of the characters"AEO". The modes are:Aβ [A]uthenticated. This mode encrypts the control connection and encrypts part of each test packet.Eβ [E]ncrypted. This mode encrypts the control connection and encrypts each test packet in full.Oβ [O]pen. No encryption of any kind is done.
The server can specify all the modes with which it is willing to communicate. The most strict mode that both the server and the client are willing to use will be selected.
Default: "AEO".
controltimeout controltimeoutβ Number of seconds to wait for protocol messages before timing out.
Default: 900.
datadir datadirβ Directory path where data files will be placed. The data files are the βreceiveβ session files that are buffered on the server. Policy restrictions can be used to set how much disk space a given connection can use, as well as to determine when each file is deleted. (See thetwamp-server.limits(f)manual page.)
Default: Current directory.
dieby diebyβ Number of seconds to wait for child processes to gracefully terminate before killing them withSIGKILL. This is in response to the master process receivingSIGTERMorSIGHUP.
This option should no longer be needed. If child processes are not exiting gracefully, please send a bug report to owamp-users@internet2.edu.
Default: 30.
diskfudge diskfudgeβ Fudge factor to use when determining if a bufferedowpfile should be kept. It creates a hard limit for disk usage. The soft limit is determined by thelimitclassthat a connection matches [see thetwamp-server.limits(5)manual page] and is applied when a test is requested. If the estimated file-size of the test would put thelimitclassover the soft limit, then the test is denied. However, it is possible, due to duplicate packets, that a test session file may end up larger than this estimate. If that happens, and if the file is successfully saved to disk, then, upon completion of the test, the actual file-size is used to update the disk usage in the resource broker process. At this point, the hard limit is applied. The hard limit is determined by multiplying the soft limit by thediskfudge. If the final file-size causes the disk space used by thelimitclassto be larger than the quota defined by the hard limit then the file is immediately deleted.
A liberal factor is recommended because this factor wonβt come in to play unless there are numerous duplicates, and that is precisely the kind of data most users will want to see. However, it is important to have this factor to ensure disk usage is not too vulnerable to replay DOS attacks of the test protocol.)
The valid values for diskfudge are 1.0-10.0.
Default: 1.0 (hard limit is the same as the soft limit).
enddelay enddelayβ Amount of time for a sender to wait after session completion (last packet send-time plus timeout) before sending the stop sessions message.
This is important if the sender clock is running ahead of the receiver clock.
A session is complete timeout after the send time of the final packet. If the sender clock is ahead of the receiver clock, the sender will declare the session complete before the receiver. The receiver is only allowed to retain records for the packets that were sent at least timeout before it receives the stop sessions message from the sender. Therefore, if the sender clock is running ahead of the receiver clock, the receiver will be forced to delete some number of the final packets from the session.
This parameter directs the sender to wait enddelay after session completion allowing the receiver clock to be essentially enddelay later than the sender clock and still retain full sessions.
Default: 1.0 (seconds).
facility facilityβ Specify the syslog facility to log messages.
Default: LOG_DAEMON.
group groupβ Specifies the gid thetwampdprocess should run as.groupcan be specified using a valid group name on the system or by using-gid. This option is only used iftwampdis started as root.
This option can be useful to limit log-file permissions to only users in this group.
loglocationβ Directs thetwampdprocess to report source code file and line number information with error messages. This is a particularly useful option to set when sending in messages as part of a bug report.maxcontrolsessions sessionsβ Specifies the maximum number of control sessions that can be active concurrently. Further connections will be closed until the limit is no longer exceeded.
Default: 0 - unlimited.
pbkdf2_count countβ This indicates the count parameter for the pseudo-random key derivation function that is used to derive the session key from the long term key stored in thetwamp-server.pfsfile.
Default: 2048.
rootfollyβ If present, this disables the requirement thattwampdrun with non-root permissions. There are legitimate reasons to runtwampdas root, but it is more risky. (For example, some operating systems require root permissions to set someDSCPvalues requested by a client.) This additional option was added to ensure root permissions are only used when explicitly intended.srcnode nodename:portβ Specify the address and port thattwampdwill listen for requests.nodenamecan be specified using a DNS name or using the textual representation of the address. It is possible to set the source address without setting the port by simply leaving off the':'and port specification. Likewise, a non-default port can be specified for all system addresses (wildcard) by starting the specification string with a':'. If an IPv6 address is specified, note that the accepted format containsnodenamein square brackets as:[fe80::fe9f:62d8]. This ensures the port number is distinct from the address specification. The address can be wildcarded by only specifying the port portion.
Because the default port for twampd is in the protected range for most operating systems, it is usually required that twampd is started as root. This option can be used to specify a non-standard port value that is not protected.
Default: nodename is wildcarded as any currently available address; port is 862.
testports 0 | lowport-highportβ Specify the specific port range to use on the local host forTWAMP-Testpackets. This can be specified in two ways. First, as0which would indicatetwampdshould allow the system to pick the port (ephemeral). Second, as a range.lowportmust be a smaller value thanhighportand both numbers must be valid port values. (16 bit unsigned integer values)
Default: 0.
testtimeout testtimeoutβ Number of seconds to wait for test packets before timing the test session out.
Default: 900.
user userβ Specifies the uid thetwampdprocess should run as.usercan be specified using a valid user name on the system or by using-uid. This option is only used iftwampdis started as root.
In the default case, twampd should be started as root so it can bind the default port 862. (See srcnode option.) twampd will release root permissions shortly after binding to this protected port and requests will be serviced by processes running with permissions defined by the user.
vardir vardirβ Directory path where thetwamp-server.pidandtwamp-server.infofiles will be placed.
Default: Current directory.
verboseβ If this option is present, it directs thetwampdprocess to generate more verbose messages to syslog.
π SEE ALSO π
twping(1), twampd(8), twamp-server.limits(5), twamp-server.pfs(5), pfstore(1), and the http://e2epi.internet2.edu/owamp/ web site.
π ACKNOWLEDGMENTS π
This material is based in part on work supported by the National Science Foundation (NSF) under Grant No. ANI-0314723. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the NSF.
Cute sign-off time, bestie: thatβs the whole twamp-server.conf(5) situation β the original footer didnβt hand us a version or date, so weβre ending with accuracy, vibes, and a lil sparkle. Stay slay. π
πβ¨
π¦ where this page comes from
- nixos 26.05: owamp 4.4.6
- nixpkgs unstable: owamp 4.4.6
- Copyright (C) 2004 #
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms