【Win】PsPing:深入网络性能测试与故障排查

在维护 Azure 虚拟机的过程中,可能会遇到一些网络连通性的问题。例如,当您尝试从个人 PC 上 ping 虚拟机的公网 IP 地址时,可能会发现出现 “Request time out” 的信息,导致无法 ping 通。这种情况的发生,通常是因为在 Azure 环境中,出于安全考虑,ICMP 包被设计为无法通过防火墙和负载均衡器。这就导致了传统的 ping 命令无法直接用于测试 Azure 中虚拟机和服务的连通性。

正是在这样的背景下,我首次接触到了 PsPing —— 一款强大的网络测试工具,由微软 Sysinternals 套件提供。PsPing 不仅继承了传统 ping 命令的功能,还扩展了 TCP ping、延迟测试和带宽测量等高级特性,使其成为解决 Azure 网络测试难题的理想选择。

下载安装

下载地址:https://learn.microsoft.com/zh-cn/sysinternals/downloads/psping

  1. 下载完PSTools.zip包之后,放到任意本地磁盘(例:C:\Windows\PSTools )内,解压之后如下:
    在这里插入图片描述

  2. 将解压地址放到环境变量的PATH中
    在这里插入图片描述

  3. 使用CMD命令行工具,输入psping,可见psping四个主要功能的帮助命令,四个功能分别是ICMP Ping、TCP Ping、延迟测试、带宽测试。
    在这里插入图片描述

使用方法

  1. ICMP ping
    在这里插入图片描述
    命令 psping -n 10 -w 2 www.baidu.com 使用了 PsPing 工具的两个参数 -n-w 来对 www.baidu.com 进行网络测试。
    下面是该命令参数的详细解释:

    • -n 10:这个参数指定了 PsPing 将发送的 ECHO 请求的数量。在这个例子中,PsPing 将发送 10 个 ICMP 或 TCP 请求到目标主机。这个选项可以用来测试一定数量级的网络响应情况。

    • -w 2:这个参数后面跟的数字代表 “热身” 测试的数量,即在正式的测试之前进行的测试次数。热身测试有助于初始化网络连接,避免因连接建立时间导致的延迟测量不准确。在这个例子中,PsPing 会先发送 2 个热身请求,然后才开始计算测试结果。

    • www.baidu.com:这是 PsPing 测试的目标主机名。PsPing 将尝试解析这个域名到相应的 IP 地址,并对该地址执行指定数量的网络请求。

    总结来说,该命令将对 www.baidu.com 执行总共 12 次(10次正式测试 + 2次热身测试)的网络连通性测试,测试结果将基于这 10 次正式测试的数据生成。

  2. TCP ping
    在这里插入图片描述命令 psping -n 10 -w 2 www.baidu.com:443 使用 PsPing 工具对 www.baidu.com 网站的端口 443 执行特定的网络测试。下面是该命令各部分的详细解释:

    • -n 10:此参数指定 PsPing 将发送的 ECHO 请求或探针的数量。在这个例子中,PsPing 将向目标发送 10 个请求。这些请求可以是基于 ICMP 的(如果 ICMP 未被阻止)或者是 TCP 连接尝试(如果 ICMP 被阻止或未响应)。

    • -w 2:这个参数定义了在主要测试序列开始前的 “热身” 请求数量。热身可以帮助确保网络连接已经建立,并且任何网络设备都已经准备好处理即将到来的测试流量。在这个例子中,PsPing 将首先发送 2 个热身请求。

    • www.baidu.com:这是要进行网络测试的目标主机的域名。PsPing 将尝试解析这个域名到相应的 IP 地址。

    • :443:指定了目标端口号 443。端口 443 通常用于 HTTPS 连接,这意味着 PsPing 将尝试建立到 www.baidu.com 的安全 HTTP 服务端口的 TCP 连接。

    综上所述,该命令将向 www.baidu.com 的 HTTPS 端口 443 发送 12 次请求(包括 2 次热身请求和 10 次正式测试请求)。这些请求将用于测量到目标端口的网络延迟、检查连接稳定性以及评估目标端口的可达性。

    如果 ICMP 请求在网络中被阻止,PsPing 将使用 TCP 来执行测试。在这种情况下,PsPing 尝试与指定端口建立 TCP 连接,以此来模拟传统 ICMP ping 的功能。输出结果将提供关于每个请求的延迟时间,以及可能发生的错误或超时信息。

  3. 延迟分析

    1. 先用PSPING起一个服务
      在这里插入图片描述命令 psping -s 10.2.12.129:888 用于启动 PsPing 工具的服务器模式,其参数 -s 后面跟随的是指定的 IP 地址和端口号。下面是该命令各部分的详细解释:

      • -s:这个参数告诉 PsPing 以服务器模式运行。在服务器模式下,PsPing 将在指定的 IP 地址和端口上监听传入的连接请求,而不是主动发送请求到远程服务器。

      • 10.2.12.129:这是 PsPing 服务器模式下要监听的 IP 地址。您需要确保该地址是分配给运行 PsPing 的主机的接口上的一个有效 IP 地址。

      • :888:这是 PsPing 将在其上监听的端口号。端口 888 在这个上下文中被指定为 PsPing 将等待客户端连接的网络端口。

      综上所述,该命令将 PsPing 设置为在 IP 地址 10.2.12.129 的端口 888 上作为一个服务器,准备接受来自网络上其他 PsPing 客户端的连接请求。这可以用于进行延迟和带宽测试,而无需主动 ping 远程主机。

    2. 客户端访问
      在这里插入图片描述命令 psping -l 8k -n 10000 10.2.12.129:888 是 PsPing 工具的一个使用示例,它结合了几个不同的参数来执行网络性能测试。下面是该命令各部分的详细解释:

      • -l 8k:此参数指定了发送的每个数据包的大小。-l 后面跟随的 8k 表示每个数据包的大小为 8 kilobytes(千字节)。这是进行带宽测试或延迟测试时使用的负载大小。

      • -n 10000:此参数定义了要发送的请求或数据包的总数。在这个例子中,-n 10000 表示 PsPing 将发送 10,000 个数据包。

      • 10.2.12.129:888:这是目标服务器的 IP 地址和端口号。IP 地址 10.2.12.129 是测试将要发送数据包到的服务器的地址,而 :888 指定了服务器上用于接收这些数据包的端口。

  4. 带宽分析
    在这里插入图片描述命令 psping -b -l 8000k -n 10000 10.2.12.129:888 用于执行网络带宽测试,具体参数解释如下:

    • psping:这是启动 PsPing 工具的命令。

    • -b:此参数指示 PsPing 执行带宽测试。带宽测试会尝试衡量网络链路的最大传输速率。

    • -l 8000k:此参数指定了每个测试数据包的大小。-l 后面跟随的 8000k 表示每个数据包的大小为 8000 kilobytes(千字节),即 8 兆字节(MB)。这比一般的 ICMP ping 数据包大得多,因此可以用于测试网络在传输大量数据时的性能。

    • -n 10000:此参数定义了要发送的测试数据包的总数。在这个例子中,PsPing 将发送 10000 个大小为 8000k 的数据包。

    • 10.2.12.129:888:这是目标服务器的 IP 地址和端口号。IP 地址 10.2.12.129 是测试将要发送数据包到的服务器的地址,而 :888 指定了服务器上用于接收这些数据包的端口。

·图中返回结果显示:总共发了8个T,最大速度711.71 MB/s, 平均135.83 MB/s。

PSTools

PsTools 套件是免费的,常用于系统管理员和 IT 专业人员的工具箱中,用于执行各种系统管理和故障排除任务。这些工具可以在命令行环境下提供强大的功能,帮助用户处理日常的系统管理任务,如远程执行服务管理、监控进程活动、查询系统信息等。除了上面介绍的psping这个工具外,PSTools还包含以下功能:

psexec:在远程系统上执行程序,相当于远程运行命令提示符中的命令。
psfile:显示打开的文件及其拥有者,或者显示特定文件被哪些进程打开。
psgetsid:显示用户账户的 SID(安全标识符)。
psinfo:显示本地或远程系统的信息,如 CPU 类型、物理内存、操作系统版本等。
pskill:结束一个或多个正在运行的进程。
pslist:显示运行在远程系统上的进程列表。
psloggedon:显示当前登录到本地或远程 Windows 系统的用户。
psloglist:显示 Windows 事件日志中条目的摘要。
pspasswd:远程更改计算机的密码。
psservice:管理和查询 Windows 服务,包括启动、停止、暂停和继续服务。
psshutdown:关闭或重新启动远程系统。
pssuspend:挂起或恢复一个或多个在运行的进程。

参考

  • https://learn.microsoft.com/zh-cn/sysinternals/downloads/psping
  • https://learn.microsoft.com/zh-cn/sysinternals/downloads/pstools

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/829388.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

plsql 新建sql窗口 初始化慢的问题

问题描述: 新建sql窗口当sql语句多的情况下初始化很慢。 解决方法: 采用导入表的方式。 具体方式 工具->导入表->sql插入。 使用命令窗口 导入文件,然后点击导入按钮。

Typora for Mac:轻量级Markdown编辑器

Typora for Mac是一款专为Mac用户设计的轻量级Markdown编辑器,它以其简洁的界面和强大的功能,成为了Markdown写作爱好者的首选工具。 Typora for Mac v1.8.10中文激活版下载 Typora的最大特色在于其所见即所得的编辑模式,用户无需关心复杂的M…

为什么 Facebook 不使用 Git?

在编程的世界里,Git 就像水一样常见,以至于我们认为它是创建和管理代码更改的唯一可行的工具。 前 Facebook 员工,2024 年 首先,我为什么关心? 我致力于构建 Graphite,它从根本上受到 Facebook 内部工具的…

Java | Leetcode Java题解之第52题N皇后II

题目&#xff1a; 题解&#xff1a; class Solution {public int totalNQueens(int n) {Set<Integer> columns new HashSet<Integer>();Set<Integer> diagonals1 new HashSet<Integer>();Set<Integer> diagonals2 new HashSet<Integer>…

【Diffusion实战】训练一个diffusion模型生成蝴蝶图像(Pytorch代码详解)

上一篇Diffusion实战是确确实实一步一步走的公式&#xff0c;这回采用一个更方便的库&#xff1a;diffusers&#xff0c;来实现Diffusion模型训练。 Diffusion实战篇&#xff1a;   【Diffusion实战】训练一个diffusion模型生成S曲线&#xff08;Pytorch代码详解&#xff09;…

web题目实操 5(备份文件和关于MD5($pass,true)注入的学习)

1.[ACTF2020 新生赛]BackupFile &#xff08;1&#xff09;打开页面后根据提示是备份文件 &#xff08;2&#xff09;查看源码发现啥都没有 &#xff08;3&#xff09;这里啊直接用工具扫描&#xff0c;可以扫描到一个文件名为&#xff1a;/index.php.bak的文件 &#xff08;…

ArcGIS Pro 和 Python — 分析全球主要城市中心的土地覆盖变化

第一步——设置工作环境 1–0. 地理数据库 在下载任何数据之前,我将创建几个地理数据库,在其中保存和存储所有数据以及我将创建的后续图层。将为我要分析的五个城市中的每一个创建一个地理数据库,并将其命名为: “Phoenix.gdb” “Singapore.gdb” “Berlin.gdb” “B…

安卓悬浮窗权限检查

目录 悬浮窗权限代码检测悬浮窗功能 悬浮窗权限 请求了这个权限后&#xff0c;app的权限管理中会有「显示悬浮窗」的权限选项。后面会引导用户去开启这个权限。 <uses-permission android:name"android.permission.SYSTEM_ALERT_WINDOW" />代码检测悬浮窗功能…

Windows系统下将MySQL数据库表内的数据全量导入Elasticsearch

目录 下载安装Logstash 配置Logstash配置文件 运行配置文件 查看导入结果 使用Logstash将sql数据导入Elasticsearch 下载安装Logstash 官网地址 选择Windows系统&#xff0c;需下载与安装的Elasticsearch相同版本的&#xff0c;下载完成后解压安装包。 配置Logstash配…

贪吃蛇大作战【纯c语言】

如果有看到不懂的地方或者对c语言某些知识忘了的话&#xff0c;可以找我之前的文章哦&#xff01;&#xff01;&#xff01; 个人主页&#xff1a;小八哥向前冲~-CSDN博客 所属专栏&#xff1a;c语言_小八哥向前冲~的博客-CSDN博客 贪吃蛇游戏演示&#xff1a; 贪吃蛇游戏动画演…

第一阶段--Day2--信息安全法律法规、网络安全相关标准

目录 1. 针对信息安全的规定 2. 网络安全相关标准 1. 针对信息安全的规定 《中华人民共和国计算机信息系统安全保护条例》1994年2月18日颁布并实施 中华人民共和国计算机信息系统安全保护条例__增刊20111国务院公报_中国政府网 《中华人民共和国国际联网安全保护管理…

笔记:编写程序,分别采用面向对象和 pyplot 快捷函数的方式绘制正弦曲线 和余弦曲线。 提示:使用 sin()或 cos()函数生成正弦值或余弦值。

文章目录 前言一、面向对象和 pyplot 快捷函数的方式是什么&#xff1f;二、编写代码面向对象的方法&#xff1a;使用 pyplot 快捷函数的方法&#xff1a; 总结 前言 本文将探讨如何使用编程语言编写程序&#xff0c;通过两种不同的方法绘制正弦曲线和余弦曲线。我们将分别采用…

图像处理ASIC设计方法 笔记18 轮廓跟踪算法的硬件加速方案

目录 1排除伪孤立点(断裂链表)方法1 限制链表的长度方法2 增加判断条件排除断裂链表方法3 排除不必要跟踪的轮廓(推荐用这个方法)P129 轮廓跟踪算法的硬件加速方案 1排除伪孤立点(断裂链表) 如果图像中某区域存在相邻像素之间仅有对角连接的部位,则对包围该区域的像素…

SOLIDWORKS Electrical 3D--精准的三维布线

相信很多工程师在实际生产的时候都会遇到线材长度不准确的问题&#xff0c;从而导致线材浪费甚至整根线材报废的问题&#xff0c;这基本都是由于人工测量长度所导致的&#xff0c;因此本次和大家简单介绍一下SOLIDWORKS Electrical 3D布线的功能&#xff0c;Electrical 3D布线能…

伙伴匹配(后端)-- 用户登录

文章目录 登录逻辑设计登录业务代码实现用户登录态如何知道是哪个用户登录了&#xff1f;cookie与session 逻辑删除配置添加TableLogic注解 &#xff08;现在做单机登录&#xff09; 后面修改为redis单点登录 登录逻辑设计 接收参数&#xff1a;用户接账户&#xff0c;密码 请…

【数据标注】使用LabelImg标注YOLO格式的数据(案例演示)

文章目录 LabelImg介绍LabelImg安装LabelImg界面标注常用的快捷键标注前的一些设置案例演示检查YOLO标签中的标注信息是否正确参考文章 LabelImg介绍 LabelImg是目标检测数据标注工具&#xff0c;可以标注两种格式&#xff1a; VOC标签格式&#xff0c;标注的标签存储在xml文…

目标检测——蔬菜杂草数据集

引用 亲爱的读者们&#xff0c;您是否在寻找某个特定的数据集&#xff0c;用于研究或项目实践&#xff1f;欢迎您在评论区留言&#xff0c;或者通过公众号私信告诉我&#xff0c;您想要的数据集的类型主题。小编会竭尽全力为您寻找&#xff0c;并在找到后第一时间与您分享。 …

架构师系列- 消息中间件(12)-kafka基础

1、应用场景 1.1 kafka场景 Kafka最初是由LinkedIn公司采用Scala语言开发&#xff0c;基于ZooKeeper&#xff0c;现在已经捐献给了Apache基金会。目前Kafka已经定位为一个分布式流式处理平台&#xff0c;它以 高吞吐、可持久化、可水平扩展、支持流处理等多种特性而被广泛应用…

22年全国职业技能大赛——Web Proxy配置(web 代理)

前言&#xff1a;原文在我的博客网站中&#xff0c;持续更新数通、系统方面的知识&#xff0c;欢迎来访&#xff01; 系统服务&#xff08;22年国赛&#xff09;—— web Proxy服务&#xff08;web代理&#xff09;https://myweb.myskillstree.cn/114.html 目录 RouterSrv …

强复购、循环消费:排队复购模式助您在市场中脱颖而出

尊敬的各位读者&#xff0c;今天我很高兴向大家介绍一种新颖而又引人入胜的商业模式——排队复购模式。这个模式因其强大的复购属性和循环消费特性而备受瞩目&#xff0c;被誉为电商领域的新宠儿。 为何要介绍排队复购模式&#xff1f;因为它不仅操作简单、容易引起消费者的兴…