码迷,mamicode.com
首页 > 其他好文 > 详细

网络TCP

时间:2020-01-08 14:30:24      阅读:66      评论:0      收藏:0      [点我收藏+]

标签:end   int   level   NPU   evel   print   服务器ip   最大   import   

优点:

  • 可靠,稳定
  • 适合传输大量数据

缺点:

  • 传输速度慢
  • 占用系统资源高

TCP和UDP区别

  1. TCP面向连接; UDP是不面向连接;
  2. TCP提供可靠的数据传输,也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP不保证可靠的数据传输,容易出现丢包情况;
  3. TCP需要连接传输速度慢,UDP不需要连接传输速度快
  4. TCP不支持发广播;UDP支持发广播
  5. TCP对系统资源要求较多,UDP对系统资源要求较少。
  6. TCP适合发送大量数据,UDP适合发送少量数据
  7. 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服务器

  1. socket创建一个套接字
  2. bind绑定ip和port
  3. listen使套接字变为可以被动链接
  4. accept等待客户端的链接
  5. recv/send接收发送数据
  • tcp服务端绑定端口号,程序退出后端口号不会立即释放,解决办法可以设置socket选项,让程序退出端口号立即释放,也称为端口号复用

网络TCP

标签:end   int   level   NPU   evel   print   服务器ip   最大   import   

原文地址:https://www.cnblogs.com/lab-zj/p/12166264.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!