Windows 平台上面管理服务器程式的高级 QoS 策略

embedded/2024/9/24 11:24:39/

在 Windows 平台上面,目前有两个办法来调整应用程式的 QoS 策略设置,一种是通过程式设置,一种是通过 “Windows 组策略控制”。

在阅读本文之前,您需要先查阅本人以下的几篇文献,作为前情提示:

VC++ Windows 平台通过QOS2库函数设置Socket DSCP(IP_TOS)参数选项_udp可以打dscp吗-CSDN博客

Windows TCP/IP客户端模式,网络吞吐优化_ctcp cubic-CSDN博客 

C/C++ 设置Socket的IP_TOS选项_socket修改tos-CSDN博客

在 Windows 平台,自进入 Windows Vista / Windows 2008 Server 开始就不允许用户通过,标准SOCKET API 接口来设置链路 QOS 策略了,但 Vista/7/2008/8 好歹对系统注册表解禁重启,还能用,但是 Windows 2012 RC2、Windows 8.1(build 9200)开始根本就不行,只能通过 QoS2 接口调用来设置。

但直到今天,我都没搞明白UDP/IP,按照文档应当如何对具体进程SOCKET资源设置,当然是知晓 TCP/IP,链路QOS2接口怎么使用。

但是让程序自己去调用系统的接口太麻烦了,操作系统本来就提供了对应的QOS策略管理的操作面板,点几下就能解决问题,何必要这么闹腾,还得改服务器程序的网络实现代码结构。

高级 QoS 策略配置步骤:

1、以管理员身份运行 cmd

2、运行 gpedit 命令打开 Windows 组策略控制窗口(MMC)

3、点击 Windows 设置项

4、点击基于策略的 QoS 

5、右键高级 QoS 策略

6、

7、

8、右键基于策略的 QoS -> 新建策略

9、策略命随便写,DSCP值(0~63)写 26 就可以(它就是:FLASH 报文优先级)

10、写你的EXE服务器程序的全文件路径(Full Exe Path)

11、这个默认就OK,有需要自己调。

12、有TCP+UDP就选这个,没得选TCP或者UDP,点完成。

 

 

上面就配置完了就立即生效了,不放心就重启下服务器程序,怎么验证是否有效果,在服务器上面打开抓包工具,如:“Wireshark”

比如下面这样:

TOS为 0x68 它就相当于DSCP值为26的效果,FLASH报文。


http://www.ppmy.cn/embedded/3529.html

相关文章

rocketmq-dashboard打包测试报错

rocketmq-dashboard运行的时候没问题,但是打包执行测试的时候就是报错 这时候跳过测试就可以成功 报错为 There are test failures. Please refer to D:\CodeEn\rocketmq-dashboard\target\surefire-reports for the individual test results. 你只需要跳过测试就…

【C语言】深入解析选择排序算法

一、算法原理二、算法性能分析三、C语言实现示例四、总结 一、算法原理 选择排序(Selection Sort)是一种简单直观的排序算法。它的工作原理是不断地选择剩余元素中的最小(或最大)元素,放到已排序的序列的末尾&#xff…

JVM-内存模型(运行时数据区)

目录 1. 线程私有1.1 程序计数器(PC寄存器)1.2 虚拟机栈1.3 本地方法栈 2. 线程共享2.1 堆2.2 方法区 3. 直接内存 参考 pdai全栈知识体系-JVM-内存结构 1. 线程私有 1.1 程序计数器(PC寄存器) 作用:PC 寄存器用来存…

React + 项目(从基础到实战) -- 第九期

实现分页 , LoadMore 上划加载更多功能效果 分页 page : 当前页 pageSize: 页面大小 自定义分页组件 组件传值 import {FC , useEffect, useState } from reactimport { useNavigate , useLocation ,useSearchParams} from react-router-dom;import { Pagination } from &quo…

Aws Nat Gateway

要点 NAT网关要能访问外网,所以需要部署在有互联网网关的Public子网中。 关键: NAT网关创建是选择子网,一定要选择公有子网(有互联网网关子网) 特别注意: 新建nat网关的时候,选择的子网一定…

ubuntu系统下opencv的编译安装

ubuntu系统下opencv的编译安装 参考https://blog.csdn.net/KIK9973/article/details/118830187 1 安装准备 1.1安装依赖环境(Ubuntu18.04) 下载opencv的依赖,其中第三行的依赖是可选的,前两行的依赖则是必要的。 sudo apt-get install build-essent…

Flutter 插件站新升级: 加入优秀 GitHub 开源项目

Flutter 插件站新升级: 加入优秀 GitHub 开源项目 视频 https://youtu.be/qa49W6FaDGs https://www.bilibili.com/video/BV1L1421o7fV/ 前言 原文 https://ducafecat.com/blog/flutter-awesome-github-repo-download 这几天晚上抽空把 Flutter 插件站升级,现在支…

服务器清理挖矿问题

top -c ps -ef netstat -antp # 查所有端口链接 ls -al /proc/$PID/exe # 查执行文件 kill -9 $PID # 杀进程 // 查文件 /usr/lib/systemd/system /usr/lib/systemd/system/multi-user.target.wants /etc/rc.local /etc/inittab /etc/rc0.d/ /etc/rc1.d/ /etc/rc2.d/…