Python网络编程——TCP编程

CP 编程是实现网络通信的核心技术之一,尤其在需要可靠数据传输的场景中非常重要。

  • 面向连接​:通信双方必须先建立连接(三次握手),结束后要断开连接(四次挥手)
  • ​可靠性​:通过确认应答(ACK)、超时重传、滑动窗口、流量控制、拥塞控制等机制来保证数据可靠有序地送达
  • ​流式传输​:数据没有固定的消息边界,可能会发生"粘包"现象

为了直观对比 TCP 和 UDP 的一些关键区别,请看下表:

特性 TCP UDP
​​连接方式​​ 面向连接 (三次握手) 1 4 无连接 3
​​可靠性​​ 可靠 (确认、重传、排序等) 1 4 不可靠 3
​​传输形式​​ 字节流 (可能粘包) 1 数据报文 (有边界) 3
​​速度​​ 相对较慢 相对较快
​​应用场景​​ 文件传输、邮件、网页浏览等需要高可靠性的场景 视频流、DNS查询、语音通话等实时性要求高的场景

服务器

客户端:

  1. 在 VSCode 中分别创建 server.py和 client.py文件并粘贴代码。

  2. 首先运行 ​​服务器端​ ​:在终端中执行 python server.py。你会看到 [*] 服务器监听在 127.0.0.1:9999。

  3. 然后运行 ​​客户端​ ​:打开另一个终端,执行 python client.py。你会看到 [*] 已连接到服务器 127.0.0.1:9999,并可以输入消息。

  4. 在客户端输入消息后,服务器端会收到并回复,客户端会打印出服务器的回复。

  5. 输入 quit可以退出客户端。使用 Ctrl+C可以终止服务器端。

相关推荐
IT_Octopus3 小时前
【零基础入门 LLM 开发 · Day 13】:LangChain 的对话记忆——Message 对象版
人工智能·python·langchain
2603_965148113 小时前
社区与学习资源:从入门到精通的API选品学习路径
数据库·人工智能·python·学习·数据挖掘
CCblandy4 小时前
令牌桶在 0.9 倍负载超发 19%、固定窗口边界放行 20 个:四种限流算法同构实测
后端·python·算法·性能优化·架构
花间相见5 小时前
【计算基础|网络14】网络层:IP、ICMP 与 ping
网络·网络协议·tcp/ip
Cc.Y5 小时前
Java零基础入门:深入Java核心:文件IO与序列化全解
java·开发语言·python
OnlineProxy5 小时前
为 LangChain 和 CrewAI 构建自定义工具:将代理 IP 轮换封装至智能体函数中
网络协议·tcp/ip·langchain
拿本唠嗑AI研究5 小时前
本体工程实战指南:从建模到可维护的完整落地路径
java·人工智能·python·jena·ontology
Smoothcloud润云5 小时前
PyTorch推理服务模型热切换与失败回滚实战:降低版本更新中断
服务器·人工智能·pytorch·python·深度学习·gpu
jsjzsl26 小时前
递归自改进系统(RSI)的本质是自发对称破缺:智能爆炸有界—— AI研发切记盲目投入
人工智能·python·算法
2601_954811826 小时前
机器视觉教学套件选型指南:五维技术参数对比与课程体系评估
python·数码相机