TCP协议是一种面向连接的协议,它在网络中提供可靠的、有序的、基于字节流的数据传输。它通过建立连接、数据的确认和重传机制等,确保数据的可靠性和顺序性。在TCP通信中,客户端和服务器之间的数据传输是双向的,双方可以相互发送和接收数据

实现TCP服务器

以下是一个示例,展示了如何使用Python Socket模块实现一个简单的TCP服务器:

import socket

# 创建Socket对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 绑定IP地址和端口号
server_address = ('localhost', 8888)
server_socket.bind(server_address)

# 监听客户端连接
server_socket.listen(1)
print('服务器已启动,等待客户端连接...')

# 接受客户端连接
client_socket, client_address = server_socket.accept()
print('客户端已连接:', client_address)

# 接收客户端消息
data = client_socket.recv(1024)
print('收到消息:', data.decode())

# 发送回复消息给客户端
reply = '欢迎连接到服务器!'
client_socket.sendall(reply.encode())

# 关闭连接
client_socket.close()
server_socket.close()

在这个示例中,我们首先创建了一个Socket对象并绑定到本地主机的IP地址和指定的端口号。然后,我们调用listen()方法开始监听客户端连接。一旦有客户端连接到服务器,我们通过调用accept()方法来接受连接,并返回一个新的Socket对象来处理客户端请求。

接收到客户端的消息后,我们打印出来,并发送一个回复消息给客户端。最后,我们关闭客户端和服务器的连接

实现TCP客户端

以下是一个示例,展示了如何使用Python Socket模块实现一个简单的TCP客户端:

import socket

# 创建Socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 连接服务器
server_address = ('localhost', 8888)
client_socket.connect(server_address)

# 发送消息给服务器
message = 'Hello, Server!'
client_socket.sendall(message.encode())

# 接收服务器回复消息
reply = client_socket.recv(1024)
print('收到回复:', reply.decode())

# 关闭连接
client_socket.close()

在这个示例中,我们首先创建了一个Socket对象,并通过connect()方法连接到指定的服务器地址和端口号。然后,我们发送一条消息给服务器,并通过recv()方法接收服务器的回复消息。

最后,我们关闭客户端的连接

posted on 2024-04-24 14:40  会锻炼的猪  阅读(108)  评论(0编辑  收藏  举报