显示系统中所有的socket信息
netstat -aon
/proc/net/tcp
/proc/net/udp
/proc/net/unix
相关的代码是:tcp4_seq_show(struct seq_file *file, void *v),函数执行
established_get_first
listening_get_next
难道只得到listening和establiseded的sock吗?
tcp_seek_last_pos
inet_hashinfo tcp_hashinfo是一个全局的变量,都是从这个全局的哈希表中得来的,得来的
可不可以看到每一个socket上的数据传输速度呢?传输的速度、传输的package的数目,
- nethogs: 按进程查看流量占用
- iptraf: 按连接/端口查看流量
- ifstat: 按设备查看流量
- ethtool: 诊断工具
- tcpdump: 抓包工具
- ss: 连接查看工具
- 其他: dstat, slurm, nload, bmo
http://www.jb51.net/LINUXjishu/151977.html
ss可以统计详细的socket信息
lsof是怎么读取全部打开的文件的呀?
使用lsof -p <pid>能够列出所有该进程所有占用的文件,这个该很好获取 /proc/<pid>/fd,进程打开的所有的文件,然后是进程打开的文件,系统现在打开的所有的文件是通过哪个接口读出来的?会遍历所有文件的/proc/\<pid\>/fd/,可以看codebox: lsof.stp read.stp。
从网络设备和socket上,一直有个问题,尤其是tcp已经有流量控制了,为啥还要有流量
单机上网络流量控制。如何控制网络的流量
在网络整个协议栈上有几个重要的节点,这个也是iptables存在的原因,iptables中设置了几个重要的链,这几条链包括INPUT/OUTPUT/PREROUTING/POSTROUTING/FORWARD/,有这样5个链,接收数据包的流程,比如接收到数据包,接收的数据包会在函数中netif_receive_skb,然后在ip层是ip_recv,
47 NF_INET_PRE_ROUTING, 接收到了数据包,在进行路由之前,修改数据包的信息;
48 NF_INET_LOCAL_IN, 路由之后,在这个数据包进如高层协议之前要做的事情;
49 NF_INET_FORWARD, 在路由确定了之后,数据包进行转发;已经确定过了转发的出口
50 NF_INET_LOCAL_OUT,
51 NF_INET_POST_ROUTING,,经过路由,还没有确定转发的出口
52 NF_INET_NUMHOOKS
53 };
NAT使用了其中的三条链:pre_routing/post_routing/forward
显示系统中所有的socket信息的更多相关文章
- Linux中显示系统中USB信息的lsusb命令
来源:Linux中国 原文:https://linux.cn/article-2448-1.html 通用串行总线(USB)被设计成为连接计算机外设的标准,如键盘.鼠标.打印机.数码相机.便携式媒体 ...
- [linux]top命令详解-实时显示系统中各个进程的资源占用状况
简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按 ...
- free - 显示系统中已用和未用的内存空间总和.
总览 (SYNOPSIS) free [-b | -k | -m] [-o] [-s delay ] [-t] [-V] 描述 (DESCRIPTION) free 显示 系统中 已用和未用的 物理内 ...
- 9.7 top:实时显示系统中各个进程的资源占用状况
top命令 用于实时地对系统处理器状态进行监控,它能够实时地显示系统中各个进程的资源占用状况.该命令可以按照CPU的使用.内存的使用和执行时间对系统任务进程进行排序显示,同时top命令还可以通过交互式 ...
- 让Win10显示系统中隐藏的文件夹
让Win10显示系统中隐藏的文件夹.. ------------------------- -----------------------
- [linux]netstat命令详解-显示linux中各种网络相关信息
1.功能与说明 netstat 用于显示linux中各种网络相关信息.如网络链接 路由表 接口状态链接 多播成员等等. 2.参数含义介绍 -a (all)显示所有选项,默认不显示LISTEN相关-t ...
- 获取系统中所有进程&线程信息
读书笔记--[计算机病毒解密与对抗] 目录: 遍历进程&线程程序 终止进程 获取进程信息 获取进程内模块信息 获取进程命令行参数 代码运行环境:Win7 x64 VS2012 Update3 ...
- 如何获取Android系统中申请对象的信息
最近一直在做有关内存方面的优化工作,在做优化的过程,除了关注内存的申请量以及GC的情况之外,我们经常需要想方法找出是那些对象占用了大量内存,以及他们是如何导致GC的,这意味着我们需要获取对象申请的信息 ...
- RDLC中添加参数,用来显示报表中数据集之外的信息。
我添加了两个参数,首先后台: ReportParameter rp = ,,).ToString()); ReportParameter rp1 = new ReportParameter(" ...
随机推荐
- 讯飞SDK的使用
在配置好Android Studio 2.3.3后,依照结合网上例子,动手创建讯飞语言听写app,最终手机上运行成功. 主要参考两篇博文(zqHero/XunFeiVoiceDEmo ,Android ...
- 北京Uber优步司机奖励政策(1月23日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- Java String源码解析
public final class String implements java.io.Serializable, Comparable<String>, CharSequence { ...
- apache和IIS共存,服务器对外统一使用80端口
apache和IIS共用80端口为了PHP与ASP各自的执行效率,要在服务器上安装iis与Apache,但是无法同时使用80端口,否则其中必定有一个启动不了.让它们共存的并且访问网站不需要加端口号,解 ...
- 几个常用的轻量级web服务
Node.js 安装:npm install http-server 使用:hs命令,可启动以当前目前为webroot的8080端口web服务,也可指定端口 Python 安装:内置 使用:pytho ...
- 第三篇 JavaScript基础
知识预览 BOM对象 DOM对象(DHTML) 实例练习 转:https://www.cnblogs.com/yuanchenqi/articles/5980312.html#_label2 一.Ja ...
- lesson 20 pioneer pilots
lesson 20 Pioneer pilots driver pilot rider cyclist 骑自行车的人 介词后不加that cover + 距离 = travel 了一段距离 by su ...
- NO.01---今天聊聊Vuex的简单入门
作为一款个人认为非常牛x的框架,个人使用起来得心应手,所以近期就记录一下这款框架吧. 首先说一说 Vuex 是什么? 官方给出的解释:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它 ...
- 打包一个Docker镜像,让你的好友加载开启一个容器,并且每隔一秒输出hello,world到指定的文件中
一.两个脚本代码 Dockerfile FROM bash COPY . /usr/herui/ WORKDIR /usr/herui/ CMD [ "sh", "hel ...
- javaee开发工具及环境配置过程
在配置javaee开发环境的过程中遇到过很多问题,在此系统的整理一下我之前的配置过程 注:配置过程学习自<JSP&Servlet学习笔记(第二版)>详细过程可以阅读此书.在文章的最 ...