当前位置: 首页 > news >正文

app建站平台建设网站应该注意的地方

app建站平台,建设网站应该注意的地方,郑州男科医院哪家比较好的医院,谁家做网站比较好最近一直在学习网络编程,今天把 socket部分做一个总结。 Python 的socket库可以实现不同协议不同地址的发包和收包,无奈资料很少,官方例子有限,大神博客很少提及, 经过一番尝试后,总结以下几点用法以便大家…

最近一直在学习网络编程,今天把 socket部分做一个总结。

Python 的socket库可以实现不同协议不同地址的发包和收包,无奈资料很少,官方例子有限,大神博客很少提及, 经过一番尝试后,总结以下几点用法以便大家以后使用。

client端
import socket
import time
import random
import string# 定义一些常量,变量名可以变。自己好记就行
buffer = 1024  # 发送缓冲区大小,这里是1KB
data_size = 128  # 每个UDP数据包的大小
bandwidth = 1  # 目标带宽,1 Mbps
PACKETS_PER_SECOND = bandwidth * 1024 * 1024 / (8 * data_size)  # 计算每秒需要发送的数据包数量# 目标服务器的IP和端口
SERVER_IP = '127.0.0.1'  # 请替换为实际服务器IP
SERVER_PORT = 1245 # 请替换为实际端口def generate_random_data(size):"""生成随机数据,生成往UDP包中放的随机值"""return ''.join(random.choice(string.ascii_letters + string.digits) for _ in range(size)).encode()def udp_main():# 创建UDP套接字client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)print(f"Starting UDP bandwidth test to {SERVER_IP}:{SERVER_PORT} aiming for {bandwidth} Mbps...")start_time = time.time()packets_sent = 0try:while True:# 生成随机数据data = generate_random_data(data_size)# 发送数据包client_socket.sendto(data, (SERVER_IP, SERVER_PORT))#包计数packets_sent += 1# 控制发送速率以达到目标带宽elapsed_time = time.time() - start_timeif elapsed_time >= 1:#实际带宽,怎么算需要记一下actual_bandwidth = (packets_sent * data_size * 8) / (elapsed_time * 1024 * 1024)print(f"Actual bandwidth: {actual_bandwidth:.2f} Mbps")#重新计算包packets_sent = 0start_time = time.time()time.sleep(1 / PACKETS_PER_SECOND)  # 等待,控制发送频率except KeyboardInterrupt:print("\nBandwidth test interrupted by user.")finally:client_socket.close()def tcp_main():client_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)client_socket.connect((SERVER_IP, SERVER_PORT))start_time = time.time()packets_sent = 0try:while True:data = generate_random_data(data_size)client_socket.send(data)packets_sent += 1elapsed_time = time.time() - start_timeif elapsed_time >= 1:client_socket.send("q".encode())packets_sent = 0start_time = time.time()acutalwidth = (packets_sent * data_size * 8) / (elapsed_time * 1024 * 1024)print(f"Actual bandwidth: {acutalwidth:.2f} Mbps")time.sleep(1/PACKETS_PER_SECOND)except KeyboardInterrupt:print("\nBandwidth test interrupted by user.")finally:client_socket.close()if __name__ == "__main__":tcp_main(

server端

import socketdef Server_Socket():serverip = "0.0.0.0"serverport = 8080#1、2 创建UDP的socketserver_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)server_socket.bind((serverip,serverport))print(f"udp server {serverip}:{serverport}")try:while True:#3、接收客户端发来的值data,addr = server_socket.recvfrom(1024)print(f"recv from {addr}:{data.decode('utf-8')}") #print的内容不用背except KeyboardInterrupt:print("^C received, shutting down the server") #无所谓不用背具体详情finally:server_socket.close()def TCP_socket():serverip = "127.0.0.1"serverport = 1245server_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)server_socket.bind((serverip,serverport))print(f"start listening:")server_socket.listen(1024)print(f"tcp socket: {serverip}:{serverport}")try:dataconn,addr = server_socket.accept()print(f"client{dataconn}:{addr}")while True:data = dataconn.recv(1024)print(f"recv from {addr},recv data:{data.decode('utf-8')}")if data.decode('utf-8') == "q":breakdataconn.send("已送达".encode('utf-8'))except KeyboardInterrupt:print("^C received, shutting down the server")finally:server_socket.close()if __name__ == "__main__":TCP_socket()
http://www.yayakq.cn/news/760481/

相关文章:

  • asp.net网站开发案例教程保山市城市建设网站
  • 如何理解电子商务网站建设与管理sem分析
  • 网站色差表网站导航广告怎么做
  • 成都锦江规划建设局网站个人优秀网站
  • 网站建设方案报价表刘强东当年做网站读的什么书
  • 建立一个公司自己的网站网站备案号没有-1
  • 吉林省建设工程监理检测网站济南网站建设泰观网络
  • 网站设计 广州如何管理建好的网站
  • 搭建网站有什么用不良网站进入窗口免费正能量
  • 企业网站源码 一品资源网cms企业网站
  • 个人代做网站中国外包公司
  • 外贸公司网站模板卡二卡三卡四精品
  • 莆田做网站豪车网站建设背景
  • 如何入侵网站后台推广神器
  • 做分销网站好吗logo图案生成器
  • 手机网站seo优化安康洗牙费用
  • 做网站如何月入10万济南小程序开发
  • psd网站wordpress装修模板制作
  • 山西网站建设免费wordpress用户登入界面
  • 网站访问者qq西安百度推广开户运营
  • 长沙大型网站建设重视网站商务通
  • 怎么用wordpress建站福州市工程建设质量管理网站
  • 阜宁做网站找哪家好获客软件
  • 自己制作免费网站网络营销的主要方式和技巧
  • 备案名 网站名郑州网站建设开发
  • 专业建设网站建站ui设计职业培训机构
  • 汽车网站建设预算科技公司经营范围包括哪些
  • 招聘网站制作龙华住房和建设局网站怎么无法登陆
  • 网站怎么做会员系统有哪些做包装盒的网站
  • 泰安网站建设作用wordpress主题转hexo