Socket接口与网络字节序
约 38 分钟
来源证据
本课按来源课程 26考研王道计算机【C语言督学营】 的 159 个JSON文件名做主题归并,仅使用目录与文件名,不读取或复制转写正文。归并桶:Socket/网络通信文件名归并。
另有“王道408领学班|26考研计算机王牌课”的唯一文件名明确提出先学C语言,它只作为路线先修映射证据。
408先修核心
Socket把网络通信暴露为文件描述符式接口。TCP字节流没有消息边界,send/recv都可能只处理部分数据;多字节整数需统一网络字节序。
可执行步骤
发送固定长度数据时循环直到全部发送或出错;接收端按协议长度或分隔规则组帧,不能假定一次recv得到完整消息。
随课应用
应用发送1024字节TCP载荷,若只计20字节IP头和20字节TCP头,不计链路头,总IP数据报长度是多少字节?
边界检查
- 必须做到:网络程序必须处理短读、短写、断开和超时。
- 典型错误:TCP保留应用消息边界,因此一次send必对应接收端一次recv。
完成应用后必须做单选和多选。代码题需通过全部独立测试,禁止硬编码样例。
Practice
本课练习
先独立作答再提交;编程题会在隔离沙箱中真实编译、运行并对拍。