网络TCP
优点:
- 可靠,稳定
- 适合传输大量数据
缺点:
- 传输速度慢
- 占用系统资源高
TCP和UDP区别
- TCP面向连接; UDP是不面向连接;
- TCP提供可靠的数据传输,也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP不保证可靠的数据传输,容易出现丢包情况;
- TCP需要连接传输速度慢,UDP不需要连接传输速度快
- TCP不支持发广播;UDP支持发广播
- TCP对系统资源要求较多,UDP对系统资源要求较少。
- TCP适合发送大量数据,UDP适合发送少量数据
- TCP有流量控制,UDP没有流量控制
TCP客户端代码
import socket
# 创建tcp socket
tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 目的信息
server_ip = input("请输入服务器ip:")
server_port = int(input("请输入服务器port:"))
# 链接服务器
tcp_client_socket.connect((server_ip, server_port))
# 提示用户输入数据
send_data = input("请输入要发送的数据:")
tcp_client_socket.send(send_data.encode("gbk"))
# 接收对方发送过来的数据,最大接收1024个字节
recvData = tcp_client_socket.recv(1024)
print('接收到的数据为:', recvData.decode('gbk'))
# 关闭套接字
tcp_client_socket.close()
tcp服务器
- socket创建一个套接字
- bind绑定ip和port
- listen使套接字变为可以被动链接
- accept等待客户端的链接
- recv/send接收发送数据
- tcp服务端绑定端口号,程序退出后端口号不会立即释放,解决办法可以设置socket选项,让程序退出端口号立即释放,也称为端口号复用

浙公网安备 33010602011771号