sctp_test(1)

๐ŸŒธ sctp_test(1) โ€” the group chat manual page ๐ŸŒธ

okay so bestie, welcome to sctp_test(1), straight out of the General Commands Manual ๐Ÿ’– this one is your little test buddy for SCTP, and we're gonna walk through it together, no gatekeeping โœจ


๐Ÿ’ซ NAME ๐Ÿ’ซ

sctp_test</p็ดซ่‰ฒ> โ€” send and receive messages via SCTP ๐Ÿฆ‹


โœจ SYNOPSIS โœจ

sctp_test -H -P -h -p -l|s

that's the whole vibe check, and yes it's giving "short and mysterious" ๐Ÿ’…


๐ŸŽ€ DESCRIPTION ๐ŸŽ€

so like, this is a userspace test application for the SCTP Linux kernel reference implementation ๐Ÿงš that's it, that's the description, and honestly? iconic ๐Ÿ‘‘


๐Ÿ’… OPTIONS ๐Ÿ’…

grab a snack, we're going through every single one ๐Ÿ“

  • -H local-addr โ€” where you're at locally, address-wise ๐Ÿ 
  • -P local-port โ€” your local port, your local business โœจ
  • -h remote-addr โ€” the other side's address, the remote bestie ๐Ÿ“ฎ
  • -p remote-port โ€” the other side's port, periodt
  • -s โ€” act as client ๐Ÿ’Œ
  • -l โ€” listen for connections, i.e. be the server ๐Ÿ‘‘
  • -a assoc_pattern โ€” the association pattern when you're in mixed mode:
    • 0 = sequential ascending (default) โฌ†๏ธ
    • 1 = random ๐ŸŽฒ
  • -d debug โ€” how loud the debug is:
    • 0 = none ๐Ÿคซ
    • 1 = min (default) ๐Ÿ”‰
    • 2 = max ๐Ÿ“ข
  • -c testcase โ€” pick your packet testcase, there are seven:
    • 0 = 1 byte packets ๐Ÿฃ
    • 1 = 1352 byte packets โ€” that's the fragmentation point for an i/f with 1500 as mtu. ๐Ÿ“ฆ
    • 2 = 1353 byte packets โ€” the min. size at which fragmentation occurs for an i/f with 1500 as mtu. ๐Ÿ’ฅ
    • 3 = sequence of 1, 1353, 32768 byte packets ๐ŸŒˆ
    • 4 = sequence of following size packets: (1, 1000, 2000, 3000, 5000, 10000, 15000, 20000, 25000, 32768) ๐Ÿชœ
    • 5 = 32768 byte packets โ€” that's the default max receive window size. (default) ๐Ÿซถ
    • 6 = random size packets ๐ŸŽฐ
  • -ve value โ€” packets of the size you specify ๐ŸŽฏ
  • -m msgsize โ€” your message size, and it's gotta be 1500-65515, default value is 32768 ๐Ÿ“
  • -x number_of_repeats โ€” how many times we run it, again and again and again ๐Ÿ”
  • -o order_pattern โ€” the ordering situation:
    • 0 = all unordered (default) ๐ŸŒช๏ธ
    • 1 = all ordered ๐Ÿงพ
    • 2 = alternating ๐Ÿ”„
    • 3 = random ๐ŸŽฒ
  • -t stream_pattern โ€” stream pattern vibes:
    • 0 = sequential ascending (default) โฌ†๏ธ
    • 1 = random ๐ŸŽฒ
  • -M max_stream โ€” default value 0 ๐ŸŒŠ
  • -r seed โ€” default 0, and it uses time() โฐ
  • -L num_ports โ€” default value 0. Run the mixed mode ๐Ÿ’ซ
  • -S num_ports โ€” default value 0. Run the mixed mode ๐Ÿ’ซ
  • -D โ€” Drain. If you're in client mode, do a read following send. ๐Ÿšฐ
ngl bestie, -L and -S are literally the same description in the source, so I'm not gonna pretend I know something the page doesn't say ๐Ÿ™ˆ

๐ŸŒˆ USAGE ๐ŸŒˆ

server mode, be the one who listens ๐Ÿซถ:

server: sctp_test -H local_addr -P local_port -l

client mode, be the one who slides into the connection ๐Ÿ’Œ:

client: sctp_test -H local_addr -P local_port -h remote_addr
 -p remote-port -s

๐Ÿ’œ AUTHOR ๐Ÿ’œ

Michael Biebl <biebl@debian.org> โ€” the main character who wrote this, we love them for it ๐Ÿ‘‘


and that's the whole page, bestie!! ๐ŸŽ€ it's sctp_test(1), it lives in the General Commands Manual, and it signed off as sctp_test(1) on the way out because it's consistent like that ๐Ÿ’– stay slay, go send some SCTP messages, iykyk โœจ๐Ÿฆ‹๐ŸŒธ