在计算机网络编程中,socket(套接字) 是客户端和服务器之间通信的基础。Python 提供了内置的 socket 模块,使我们可以轻松地使用 TCP 和 UDP 协议创建网络服务。本文将详细介绍 socket 模块的基本用法,并演示如何构建 TCP 客户端和服务器,帮助你快速掌握 Python 网络编程的核心知识。
1. 什么是 socket?
socket(套接字)是 网络通信的端点,用于在不同计算机或同一台计算机的不同进程之间进行通信。它基于 IP 地址 和 端口号,主要支持:
- TCP(传输控制协议) —— 面向连接,保证数据可靠传输,适用于 Web 服务器、远程登录等。
- UDP(用户数据报协议) —— 无连接,适用于实时音视频、在线游戏等。
📌 Python socket 模块的常用方法:
socket() | 创建 socket 对象 |
bind() | 绑定 IP 地址和端口 |
listen() | 监听客户端连接 |
accept() | 接收客户端连接 |
connect() | 连接服务器 |
send()/recv() | 发送/接收数据(TCP) |
sendto()/recvfrom() | 发送/接收数据(UDP) |
close() | 关闭 socket 连接 |
2. 使用 socket 构建 TCP 服务器和客户端
2.1 构建 TCP 服务器
服务器程序需要:
📌 代码:tcp_server.py
import socket
# 创建 TCP socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定 IP 和端口
server_socket.bind((\”0.0.0.0\”, 12345)) # 监听本机所有 IP,端口 12345
# 开始监听(最大 5 个连接)
server_socket.listen(5)
print(\”服务器启动,等待客户端连接…\”)
while True:
# 等待客户端连接
client_socket, client_addr = server_socket.accept()
print(f\”客户端 {
评论前必须登录!
注册