UDPONG(1)
π UDPONG(1) π
okay bestie, welcome to udpong β part of the librdmacm crew, dated 2017-04-28. yes we're doing the unreliable datagram streaming over RDMA thing today. grab a snack, we're going in π¦
β¨ NAME β¨
udpong β unreliable datagram streaming over RDMA ping-pong test. that's the whole vibe. a ping-pong test. but make it RDMA. π
πΈ SYNOPSIS πΈ
udpong [-s server_address] [-b bind_address]
[-B buffer_size] [-C transfer_count]
[-S transfer_size] [-p server_port] [-T test_option]
literally just vibes and flags, no positional arguments, she doesn't need them π
π DESCRIPTION π
so what this does: it uses unreliable datagram streaming over RDMA protocol (aka rsocket) to connect up a client and a server application and exchange data between them. that's it. that's the whole job. client talks, server talks back, everyone has a great time π«Ά
π OPTIONS π
-sserver_address β the network name or IP address of the server system that's out there listening for connections. important: whatever name or address you use here must route over an RDMA device. and heads up β this one must be specified by the client. no-s, no connection, no party π-bbind_address β the local network address you wanna bind to. your home address, basically π-Bbuffer_size β tells her how big the send and receive network buffers should be. size matters (for buffers) β¨-Ctransfer_count β how many messages get transferred from the client to the server and back again on each iteration. round trips, bestie. default is1000π«-Stransfer_size β the size of each send transfer, in bytes. default is1000β-pserver_port β the server's port number. where the server is posted up π-Ttest_option β specifies test parameters. the available options are, and I quote:s|socketβ uses standard socket calls to transfer dataa|asyncβ uses asynchronous operation (e.g. select / poll)b|blockingβ uses blocking callsn|nonblockingβ uses non-blocking callse|echoβ server echoes all messages
pick your fighter, they're all iconic in their own way π
π NOTES π
basic usage, the classic move: start udpong on a server system, then run udpong -s server_name on a client system. she'll run a series of latency and bandwidth performance tests and you just sit there being proud of her π₯Ή
if you specify a different transfer_count or transfer_size, you get a user customized test instead β and wherever you didn't</> specify anything, the default values step in to fill the gaps. teamwork π«Ά
β οΈ okay so this part actually matters, listen up: because this test maps RDMA resources to userspace, users must ensure that they have available system resources and permissions. that's not optional, that's a real requirement. see the libibverbs README file for additional details. don't skip it bestie π
π¦ SEE ALSO π¦
go read it, iykyk πβ¨
and that's the whole page!! brought to you by librdmacm, dated 2017-04-28. mwah, go ping-pong responsibly π π
π¦ where this page comes from
- alpine 3.24: rdma-core-doc 61.0-r0 Β· GPL-2.0-only OR BSD-2-Clause
- arch rolling: rdma-core 65.0-1 Β· GPL-2.0-or-later OR LicenseRef-OpenIB.org-BSD-MIT AND GPL-2.0-or-later OR LicenseRef-OpenIB.org-BSD-FreeBSD AND GPL-2.0-or-later OR LicenseRef-Intel-BSD-3-Clause AND GPL-2.0-or-later OR LicenseRef-PathScale-BSD-Patent-License AND CC0-1.0 AND MIT AND BSD-2-Clause AND CPL-1.0 OR BSD-2-Clause OR GPL-2.0-or-later
- centos-stream 10: librdmacm-utils 62.0-3.el10 Β· GPLv2 or BSD
- centos-stream 9: librdmacm-utils 61.0-3.el9 Β· GPLv2 or BSD
- debian bookworm: rdmacm-utils 44.0-2 Β· BSD-MIT OR GPL-2.0-only
- debian trixie: rdmacm-utils 56.1-1 Β· BSD-MIT OR GPL-2.0-only
- fedora 43: librdmacm-utils 58.0-4.fc43 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: librdmacm-utils 61.0-2.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- fedora 44: librdmacm-utils 61.1^20260812git975bdaf-1.fc44 Β· GPL-2.0-only OR BSD-2-Clause AND BSD-3-Clause
- nixos 26.05: rdma-core 62.0
- nixpkgs unstable: rdma-core 65.0
- opensuse-leap 16.0: librdmacm-utils 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: librdmacm-utils 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: librdmacm-utils 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- opensuse-leap 16.0: librdmacm-utils 56.1-160000.2.2 Β· BSD-2-Clause OR GPL-2.0-only
- ubuntu jammy: rdmacm-utils 39.0-1 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: rdmacm-utils 50.0-2build2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu noble: rdmacm-utils 50.0-2ubuntu0.2 Β· BSD-MIT OR GPL-2.0-only
- ubuntu questing: rdmacm-utils 56.1-1ubuntu1
- ubuntu resolute: rdmacm-utils 61.0-2ubuntu3 Β· BSD-MIT OR GPL-2.0-only
- ubuntu stonking: rdmacm-utils 64.0-1ubuntu1 Β· BSD-MIT OR GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms