window端口占用情况及state解析

        背景:

        在电脑使用过程中,经常会开许多项目,慢慢地发现电脑越来越卡,都不知道到底是在跑什么项目导致,于是就想查看一下电脑到底在跑什么软件和项目,以作记录。

常用命令

netstat -tuln  : 使用netstat命令“netstat -tuln”,该命令将显示所有当前监听的TCP和UDP端口;

netstat -na  : 查看活动连接

netstat -ano|findstr “xxx”  : 查看某个端口号是否被占用

tasklist|findstr “xxx”:查看某个端口具体被什么程序占用

netstat -b :显示在创建每个连接或侦听端口时涉及的可执行程序,需要管理员权限,

netstat -n -o  :-n 以数字形式显示地址和端口号。-o 显示拥有的与每个连接关联的进程 ID。netstat -s -p udp :IPv4 的 UDP 统计信息

        查看端口占用:

// 打开命令符提示window+R// 输入端口查看命名,查看当前端口占用;netstat -ano netstat -ano | findstr :端口号// 进行ID(PID):每个进程在系统中有唯一PID,可以通过pid 找出对应进行并进行释放;

netstat -b 显示在创建每个连接或侦听端口时涉及的可执行程序,需要管理员权限,

 这条指令对于查找可疑程序非常有帮助。

TCP-state解析

TCP state解析
ESTABLISHED指TCP连接已建立,双方可以进行方向数据传递
CLOSE_WAIT这种状态的含义其实是表示在等待关闭。当对方close一个SOCKET后发送FIN报文给自己,你系统毫无疑问地会回应一个ACK报文给对方,此时则进入到CLOSE_WAIT状态。接下来呢,实际上你真正需要考虑的事情是察看你是否还有数据发送给对方,如果没有的话, 那么你也就可以close 这个SOCKET,发送 FIN 报文给对方,也即关闭连接。所以你在CLOSE_WAIT 状态下,需要完成的事情是等待你去关闭连接。 
LISTENING指TCP正在监听端口,可以接受链接
TIME_WAIT指连接已准备关闭。表示收到了对方的FIN报文,并发送出了ACK报文,就等2MSL后即可回到CLOSED可用状态了。如果FIN_WAIT_1状态下,收到了对方同时带FIN标志和ACK标志的报文时,可以直接进入到TIME_WAIT状态,而无须经过FIN_WAIT_2 状态。
FIN_WAIT_1这个状态要好好解释一下,其实FIN_WAIT_1和 FIN_WAIT_2状态的真正含义都是表示等待对方的FIN报 文。而这两种状态的区别是:FIN_WAIT_1状态实际上是当SOCKET在ESTABLISHED状态时,它想主动关闭连接,向对方发送了FIN 报文,此时该SOCKET即进入到FIN_WAIT_1 状态。而当对方回应ACK 报文后,则进入到FIN_WAIT_2状态,当然在实际的正常情况 下,无论对方何种情况下,都应该马上回应ACK报文,所以FIN_WAIT_1状态一般是比较难见到的,而FIN_WAIT_2 状态还有时常常可以用 netstat看到。
FIN_WAIT_2上面已经详细解释了这种状态,实际上FIN_WAIT_2 状态下的SOCKET,表示半连接,也即有一方要求close 连接,但另外还告诉对方,我暂时还有点数据需要传送给你,稍后再关闭连接。
LAST_ACK是被动关闭一方在发送FIN报文后,最后等待对方的ACK报文。当收到ACK报文后,也即可以进入到CLOSED可用状态了
SYNC_RECEIVED

收到对方的连接建立请求,

这个状态表示接受到了SYN报文,在正常情况下,这个状态是服务器端的SOCKET在建立TCP连接时的三次握手会话过程中的一个中间状态,很短暂,基本上用netstat你是很难看到这种状态的,除非你特意写了一个客户端测试程序,故意将三次TCP握手过程中最后一个ACK报文不予发送。因此这种状态时,当收到客户端的ACK报文后,它会进入到ESTABLISHED状态。

SYNC_SEND

已经主动发出连接建立请求。与SYN_RCVD遥想呼应,当客户端SOCKET执行CONNECT连接时,它首先发送SYN报文,因此也随即它会进入到了SYN_SENT状态,并等待服务端的发送三次握手中的第2个报文。

上述状态的定义与TCP规则定义的TCP状态图一致,可以对照如下两张TCP建立与终止链接的状态转换图进行理解。

常见端口占用:

80端口:HTTP通信的默认端口号,用于通过Web浏览器访问Web服务器上的网页。

443端口:HTTPS通信的默认端口号,用于通过加密的方式进行安全的Web通信。

22端口:SSH(Secure Shell)通信的默认端口号,用于远程登录和安全文件传输。

21端口:FTP(File Transfer Protocol)通信的默认端口号,用于文件传输。

25端口:SMTP(Simple Mail Transfer Protocol)通信的默认端口号,用于发送电子邮件。

110端口:POP3(Post Office Protocol 3)通信的默认端口号,用于接收电子邮件。

143端口:IMAP(Internet Message Access Protocol)通信的默认端口号,用于接收和管理电子邮件。

3306端口:MySQL数据库通信的默认端口号。

5432端口:PostgreSQL数据库通信的默认端口号。

1521端口:Oracle数据库通信的默认端口号。

27017端口:MongoDB数据库通信的默认端口号。

3389端口:远程桌面连接的默认端口号,用于远程控制计算机。

8080端口:常用的备用HTTP端口号,用于避免与默认的80端口冲突。

需要注意的是,以上是一些常见的开放端口号,实际上每个应用程序或服务都可以使用不同的端口号进行通信。在网络通信中,端口号的选择需要遵循相关的标准或约定,以确保通信的正常进行。

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

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

相关文章

Python3发送邮件如何添加附件?怎么配置?

Python3发送邮件的注意事项?如何配置Python3发邮件? Python3发送邮件时添加附件是一项常见的需求。无论是发送报告、图片,还是其他文件,掌握如何在邮件中添加附件至关重要。AokSend将详细介绍Python3发送邮件时如何添加附件&…

前端网站(二)-- 菜单页面【附源码直接可用】

菜单页面 开篇(请大家看完):此网站写给挚爱,后续页面还会慢慢更新,大家敬请期待~ ~ ~ 轻舟所编写这个前端框架的设计初衷,纯粹是为了哄对象开心。除此之外,并无其它任何用途或目的。 此前端框…

JavaScript运行原理和执行过程

参考: https://www.cnblogs.com/hexrui/p/15939592.html 1、执行上下文栈(调用栈) GECGlobal Execution Context(GEC)被放入到ECS(Execution Context Stack,简称ECS)中 GEC开始执…

24面试记录002

文章目录 12、brpc的优化2.1 brpc网络有啥降级? 3、移动语义4、python协程 二、1. mq怎么保障数据的顺序?3.brpc中上下游通信,怎么测评新增字段大小,对耗时的影响? 1 1、brpc和grpc区别,为啥选择brpc? gr…

护眼灯哪些牌子好?一文刨析护眼灯怎么选择!

护眼灯哪些牌子好?护眼台灯作为对抗视力挑战的一种方法,逐渐赢得了众多家长的青睐。这些台灯利用尖端光学技术,发出柔和且无刺激的照明,有助于保护眼睛不受伤害。它们不但可以调节亮度和色温,打造一个舒适且自然的阅读…

2024-06-19 问AI: 在LLM中,RAG是什么?

文心一言 在LLM(大型语言模型)中,RAG全称为Retrieval-Augmented Generation,即检索增强生成。以下是关于RAG的详细解释: 基本概念: RAG是一种通过检索LLMs之外的数据源来支持其生成答案的技术。它结合了搜…

【字符串在Python中的应用】

字符串是Python中非常重要的数据类型,它们是一系列字符的集合。Python提供了丰富的字符串操作方法,可以方便地处理和操作字符串。以下是一些常见的字符串操作及其详细教程。 字符串的基本操作 1. 创建字符串 字符串可以用单引号 或双引号 " 包围…

upload-labs第十三关教程

upload-labs第十三关教程 第十三关一、源代码分析代码审计 二、绕过分析1)0x00绕过a.上传eval.pngb.使用burpsuite进行拦截修改之前:修改之后:进入hex模块: c.放包上传成功: d.使用中国蚁剑进行连接 2)%00绕…

【分布预测】DistPred:回归与预测的无分布概率推理方法

论文题目:DistPred: A Distribution-Free Probabilistic Inference Method for Regression and Forecasting 论文作者:Daojun Liang, Haixia Zhang,Dongfeng Yuan 论文地址:https://arxiv.org/abs/2406.11397 代码地址&#xff1a…

小白学RAG:大模型 RAG 技术实践总结

节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。 汇总合集…

C++之模板(三)

1、缺省模板参数 可以将数据结构类型传递进来&#xff0c;比如vectop<T>&#xff08;如果没传就是默认&#xff09; 把vector当作类型参数来传递&#xff0c;从而使用它的接口然后适配出新的接口。实际上这个Stack称为适配器。有时候可能需要vector&#xff0c;但是又需…

编程电脑怎么接网线:详细步骤与注意事项

编程电脑怎么接网线&#xff1a;详细步骤与注意事项 在数字化日益普及的今天&#xff0c;无论是编程工作还是日常使用&#xff0c;电脑连接网络都是必不可少的步骤。其中&#xff0c;通过网线连接网络以其稳定性和高速率而备受青睐。然而&#xff0c;对于许多非专业人士来说&a…

【Python】AJAX

AJAX基础 一、AJAX1.1 概述1.2 XMLHttpRequest对象1.3 AJAX请求六部曲1.4 图解AJAX请求步骤 二、jQuery与AJAX2.1 jQuery.get()2.2 jQuery.getJSON()2.3 jQuery.post()2.4 jQuery.ajax() 三、Django使用AJAX3.1 请求类型3.2 PUT与PATCH的区别3.3 接收及响应JSON3.3.1 接收JSON3…

前端-echarts5.0 tooltip不显示问题

在echarts官网完成绘制后&#xff0c;将配置复制到本地&#xff0c;结果tooltip无法显示。 项目使用vue3,echarts5.0,代码写的是vue2。 option {tooltip: {trigger: axis,axisPointer: {type: cross,crossStyle: {color: #999}}},legend: {data: [完工数量, 完成率]},xAxis:…

ui自动化selenium,清新脱俗代码,框架升级讲解

一&#xff1a;简化 1. 新建common 包 新建diver.py 封装浏览器驱动类 from selenium import webdriverclass Driver():"""浏览器驱动类定义 一个【获取浏览器驱动对象driver的方法】。支持多种类型浏览器"""def get_driver(self,browser_typ…

《扩散模型 从原理到实战》Hugging Face (三)

第四章 Diffusers 实战 安装Difffusers 库 pip install -qq -U diffusers datasets transformers accelerate ftfy pyarrow扩散模型调度器 from diffusers import DDPMScheduler noise_scheduler DDPMScheduler(num_train_timesteps1000)定义扩散模型 from diffusers impo…

二维码展示与下载

1. 二维码展示(前端展示) 基于vue-qr组件实现 下载vue-qr组件 npm install vue-qr --save页面vueqr组件导入 import VueQr from vue-qr;export default {components: {VueQr} }页面展示 <el

VS安装FFmpeg库

在Visual Studio中安装FFmpeg库通常涉及以下步骤: 下载FFmpeg:访问FFmpeg官网(https://ffmpeg.org/download.html)下载对应于您的操作系统的预编译二进制文件。 解压FFmpeg:将下载的压缩包解压到您选择的目录。 配置系统环境变量:将FFmpeg的bin目录添加到系统的PATH环境变…