lsof查看端口被哪些程序在使用
1 2 3 4 |
|
查看连接创建时间
1 2 3 4 5 6 7 8 |
|
查看进程启动路径
1
|
|
1 2 3 4 |
|
1 2 3 4 5 6 7 8 |
|
1
|
|
https://www.cnblogs.com/sky-heaven/p/9012508.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
|
如果你不想在参数上花太多时间来研究,你也可以在你的linux下的源代码里面,也就是/usr/src/linux/scripts/Lindent,找到Lindent脚本,这个是linux内核源代码格式,你可以直接拿过来用。比如
cp /usr/src/linux/scripts/Lindent /usr/bin $Lindent test.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
https://www.jianshu.com/p/f2edbaca4f2c
传统的单纯采用指数增长的慢启动算法有一个无法避免的问题,在临界进入拥塞避免阶段时,特别是在高带宽长距离网络中,容易出现大规模丢包,进而导致大量数据包重传,也有可能出现timeout,致使网络带宽利用率下降。
Hybrid Slow Start,它在传统的慢启动算法中加入了判断机制,强制从慢启动转入拥塞避免。这里主要说说其在CUBIC中是怎么实现的。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
在Hybrid Slow Start算法中给出了种类判断机制用来退出慢启动进入拥塞避免,分别是ACKs train length和Increase in packet delays。
这里给出一段原文描述,在这段描述中说了怎么测ACKs train length以及为什么要用ACKs train length。
The ACK train length is measured by calculating the sum of inter-arrival times of all the closely spaced ACKs within an RTT round. The train length is strongly affected by the bottleneck bandwidth, routing delays and buffer sizes along the path, and is easily stretched out by congestion caused by cross traffic in the path, so by estimating the train length we can reliably find a safe exit point of Slow Start.
同样还是一段原文描述,如果你问我为什么不直接翻译成中文,我不会回答你这个问题的。
Increase in packet delays during Slow Start may indicate the possibility of the bottleneck router being congested.
但是Increase in packet delays的测量会受到bursty transmission的影响,所以只测一个RTT中刚开始的几个数据包的往返时间来避免bursty transission的影响,在后面给出的code中会看到
hystart重置函数
1 2 3 4 5 6 7 8 9 10 |
|
Hybrid Slow Start实现的核心部分
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
|