Python网络编程——TCP编程

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

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

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

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

服务器

客户端:

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

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

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

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

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

相关推荐
c骑着乌龟追兔子1 天前
Day 42 复习日
python
Robot侠1 天前
视觉语言导航从入门到精通(二)
开发语言·人工智能·python·llm·vln
无限大.1 天前
为什么玩游戏需要独立显卡?——GPU与CPU的分工协作
python·玩游戏
deephub1 天前
llama.cpp Server 引入路由模式:多模型热切换与进程隔离机制详解
人工智能·python·深度学习·llama
头发那是一根不剩了1 天前
测试环境如何生成自签名证书用于 HTTPS
网络协议·http·https
简单点好不好1 天前
2025--简单点--python之状态模式
开发语言·python·状态模式
棒棒的皮皮1 天前
【OpenCV】Python图像处理之仿射变换
图像处理·python·opencv·计算机视觉
weixin_446260851 天前
FastF1: 轻松获取和分析F1数据的Python包
开发语言·python
我送炭你添花1 天前
Pelco KBD300A 模拟器:06.用 PyQt5 实现 1:1 像素级完美复刻 Pelco KBD300A 键盘
python·qt·自动化·运维开发
山土成旧客1 天前
【Python学习打卡-Day22】启航Kaggle:从路径管理到独立项目研究的全方位指南
开发语言·python·学习