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可以终止服务器端。

相关推荐
林恒smileZAZ28 分钟前
移动端h5适配方案
人工智能·python·tensorflow
含目的基因的质粒30 分钟前
Python异常、模块、包
服务器·开发语言·python
二向箔reverse34 分钟前
用langchain搭建简单agent
人工智能·python·langchain
fxshy42 分钟前
python使用ffmpeg对视频进行转码
python·ffmpeg·音视频
2501_915106321 小时前
“HTTPS Everywhere” 的工程化实践,从全面加密到排查与真机取证
网络协议·http·ios·小程序·https·uni-app·iphone
AC是你的谎言1 小时前
HTTP和HTTPS
linux·网络·c++·网络协议·学习·http·https
景彡先生2 小时前
Python requests详解:从入门到实战,HTTP请求的“瑞士军刀”
python
深度学习lover2 小时前
<数据集>yolo螺丝螺母识别数据集<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·螺丝螺母识别
Geoking.2 小时前
PyTorch 基础详解:tensor.item() 方法
人工智能·pytorch·python
ZIM学编程2 小时前
「学长有话说」作为一个大三学长,我想对大一计算机专业学生说这些!
java·c语言·数据结构·c++·python·学习·php