news 2026/4/17 12:39:11

28、网络编程基础与实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
28、网络编程基础与实践

网络编程基础与实践

1. TCP连接与握手

当两台机器之间建立TCP连接时,会创建一个全双工虚拟电路,类似于电话通话。两台机器会不断通信,确保数据正确发送和接收。若连接因某种原因失败,两台机器会尝试找出问题并向相关应用程序报告。

TCP为每个传输的数据包分配一个序列号,并期望从接收方的TCP栈获得肯定确认(ACK)。如果在超时时间内未收到ACK,则认为原始数据包未送达,会重新传输数据。接收方的TCP栈使用序列号对乱序到达的分段进行重新排序,同时消除重复的分段。

每个数据包的TCP报头包含源端口和目的端口字段。这两个字段加上源IP地址和目的IP地址组合起来,唯一标识每个TCP连接。TCP报头还包含一个6位的标志字段,用于在TCP对等体之间传递控制信息。可能的标志包括SYN、FIN、RESET、PUSH、URG和ACK。SYN和ACK标志用于初始的TCP三次握手,RESET标志表示接收方希望中止连接。

TCP三次握手过程如下:
- 客户端向服务器发送一个TCP SYN数据包,SYN数据包中的序列号字段具有任意值。
- 服务器返回一个TCP [SYN, ACK]数据包,其中包含反向的序列号和对前一个序列号的确认。
- 为了真正建立TCP连接,客户端发送一个TCP ACK数据包,以确认服务器的序列号。

sequenceDiagram participant Client participant Server Client->>Server: TCP SYN 数据包(序列号任意) Server->>Cl
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/12 6:57:13

当日总结(2025年12月11日)

当日总结(2025年12月11日) 前言 去做,去试错,去迭代。 12月1日复习专题 404.左叶子之和 v0.2112.路径之和 v0.3

作者头像 李华
网站建设 2026/4/18 7:41:32

Wan2.2-T2V-A14B在AI策展人系统中的多媒体内容生产能力

Wan2.2-T2V-A14B在AI策展人系统中的多媒体内容生产能力 当一个品牌需要在春季新品发布中打动Z世代消费者,传统视频制作流程往往意味着数周的策划、拍摄与后期——人力密集、成本高昂、响应迟缓。而今天,只需输入一段描述:“穿汉服的女孩在樱花…

作者头像 李华
网站建设 2026/4/12 17:01:00

基于微信小程序的校园食堂点评系统毕设源码

博主介绍:✌ 专注于Java,python,✌关注✌私信我✌具体的问题,我会尽力帮助你。一、研究目的本研究旨在设计并实现一个基于微信小程序的校园食堂点评系统,旨在通过整合信息技术与校园生活服务,提升校园食堂的服务质量与用户体验。具…

作者头像 李华
网站建设 2026/4/18 6:38:48

为什么你的Dify检索结果不准?重排序配置误区大盘点

第一章:为什么你的Dify检索结果不准?在使用 Dify 构建智能应用时,检索增强生成(RAG)是核心功能之一。然而,许多用户反馈其检索结果不准确,导致生成内容偏离预期。问题通常并非出在模型本身&…

作者头像 李华
网站建设 2026/4/17 16:34:56

掌握这3种R语言插值法,轻松应对复杂环境监测场景

第一章:环境监测的 R 语言时空插值算法在环境监测中,获取连续的时空数据是评估污染扩散、气候变化和生态响应的关键。然而,传感器布设稀疏或数据缺失常导致观测不完整。R 语言提供了强大的时空插值工具,能够基于已有观测点预测未采…

作者头像 李华
网站建设 2026/4/18 3:29:21

【BUUCTF系列】[强网杯 2019]随便注

这是一道sql注入题目 先输入1看看显示了一些不知道什么东西尝试 1 or 11 #万能密码看上去也没有一些有用的信息然后尝试 联合注入查询 1 ORDER BY 3#也没有什么有用的尝试union注入1 union select 1,2#这里回显了被过滤的关键词,很明显后端把select、where这些核心关…

作者头像 李华