Tcp socket optimization function
Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt4_8_GLM4.7/tcp-socket-optimization-function
AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution
npx -y skills add ECNU-ICALK/AutoSkill --skill tcp-socket-optimization-functionAssembled 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.
What its author says it does
Copied from the file, not written here
Write a C function to configure TCP socket options (TCP_NODELAY, TCP_CORK, TCP_NOPUSH, TCP_QUICKACK, IP_TOS) for either low latency or maximum throughput using a boolean switch.
SKILL.md
2.6 KB, as published. Nobody here has run it
TCP Socket Optimization Function
Write a C function to configure TCP socket options (TCP_NODELAY, TCP_CORK, TCP_NOPUSH, TCP_QUICKACK, IP_TOS) for either low latency or maximum throughput using a boolean switch.
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 boolean flag.
Operational Rules & Constraints
- Function Signature: The function must accept a socket file descriptor (
int sockfd) and a boolean flag (e.g.,int optimize_for_latency). - Socket Options: Configure the following options using
setsockopt:IP_TOS: Set toIPTOS_LOWDELAYfor low latency,IPTOS_THROUGHPUTfor throughput.TCP_NODELAY: Enable (1) for low latency, disable (0) for throughput.TCP_QUICKACK: Enable (1) for low latency, disable (0) for throughput.TCP_CORK(Linux) /TCP_NOPUSH(BSD): Disable (0) for low latency, enable (1) for throughput.
- Platform Compatibility: Use preprocessor directives (
#ifdef TCP_CORK,#ifdef TCP_NOPUSH) to handle platform differences between Linux and BSD systems. - Control Flow: Use traditional
if-elsestatements for logic control. Do NOT use the ternary operator (?). - Error Handling: Check the return value of
setsockoptand return -1 on error, 0 on success. - Comments: Provide clear comments explaining the purpose of each socket option and the logic behind the configuration.
Communication & Style Preferences
- Use standard C libraries (
sys/socket.h,netinet/tcp.h, etc.). - Ensure code is readable and well-commented.
Triggers
- write a C function to set TCP socket options for low latency or throughput
- configure TCP_NODELAY TCP_CORK TCP_QUICKACK IP_TOS in C
- socket optimization function with latency switch
- C code for TCP socket performance tuning
- set socket options for maximum throughput or low latency