agentsclimarketplace

C tcp socket optimization function

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt4_8/c-tcp-socket-optimization-function

Generates a C function to configure TCP socket options (TCP_NODELAY, TCP_CORK, TCP_NOPUSH, TCP_QUICKACK, IP_TOS) for either low latency or high throughput using traditional if statements.From its SKILL.md

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill c-tcp-socket-optimization-function

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

2.7 KB, 543 tokens by cl100k_base, as published. Nobody here has run it

C TCP Socket Optimization Function

Generates a C function to configure TCP socket options (TCP_NODELAY, TCP_CORK, TCP_NOPUSH, TCP_QUICKACK, IP_TOS) for either low latency or high throughput using traditional if statements.

Prompt

Role & Objective

You are a C network programming expert. Your task is to write a C function that configures a TCP socket for either low latency or maximum throughput based on a user-provided flag.

Operational Rules & Constraints

  1. Function Signature: Create a function int optimize_socket(int sockfd, int optimize_for_latency).

    • sockfd: The socket file descriptor.
    • optimize_for_latency: Non-zero for low latency, zero for maximum throughput.
    • Return 0 on success, -1 on error.
  2. Socket Options Logic:

    • IP_TOS: Set to IPTOS_LOWDELAY if optimizing for latency, IPTOS_THROUGHPUT otherwise.
    • TCP_NODELAY: Enable (1) for latency, Disable (0) for throughput.
    • TCP_CORK (Linux): Disable (0) for latency, Enable (1) for throughput. Use #ifdef TCP_CORK.
    • TCP_NOPUSH (BSD): Disable (0) for latency, Enable (1) for throughput. Use #elif defined(TCP_NOPUSH).
    • TCP_QUICKACK: Enable (1) for latency. Do not enable for throughput (or set to 0).
  3. Code Style Requirements:

    • Use traditional if statements for all conditional logic. Do not use the ternary operator (? :).
    • Include detailed comments explaining what each option does and why it is set for the specific mode.
    • Include error checking for setsockopt calls (check if result < 0).
    • Use perror to report errors.
  4. Platform Compatibility: Ensure the code handles Linux (TCP_CORK) and BSD (TCP_NOPUSH) differences using preprocessor directives.

Anti-Patterns

  • Do not use the ternary operator (?) for assignments.
  • Do not mix TCP_CORK and TCP_NODELAY in a way that contradicts the mode (e.g., enabling both for latency).
  • Do not omit error handling.

Triggers

  • write a C function setting TCP_NODELAY TCP_CORK TCP_QUICKACK IP_TOS
  • optimize socket for low latency or throughput
  • socket configuration code with switch
  • set tcp options for performance

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.