自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Netfilter,iptables/OpenVPN/TCP guard:-(

我不会编程,但也不是一点都不会,我稍微会一些 :-)

  • 博客(10)
  • 资源 (4)
  • 论坛 (5)
  • 收藏
  • 关注

原创 指数退避和AIMD为什么都青睐数字2

这是一个有意思的话题。无论是指数退避还是AIMD,都涉及到了数字2。指数退避将当前等待时间乘以2,AIMD将当前cwnd除以2。这就有意思了,为什么是2?我曾将AIMD与指数退避相联系,AIMD是指数退避的零存整取版本,在时间序列发生的退避行为是指数退避,如果引入了buffer,这意味着本来要冲突的事件可以被buffer暂延,但积累的冲突还是不可避免,这就是buffer overflow,通过乘性减的退避行为可以解决。所以,AIMD实际上就是时间序列上指数退避在buffer空间上的积累。为什么是2?这

2021-10-31 17:20:07 1120

原创 最优停止找停车位问题的最简单解释

设xxx为一个车位被占用的概率,那么显然1−x1-x1−x则为空闲率。停车位坐标如下:仿照万里挑一的37%原则建模。设kkk为司机开始考虑停车的位置,那么实际可以停车的位置iii肯定满足在i<ki<ki<k,还有两个约束:司机在iii点停车,说明前面没有停车位,不然他可能考虑前面的车位。若iii是最优的停车位,则意味着在iii之后再无停车位。综上两点,可以求出成功停车的概率:P(k)=∑i=1kak−i×(1−a)×ai=∑i=1kak×(1−a)=(1−a)kakP(k

2021-10-30 11:02:36 1105

原创 强者越强-效率与公平的幂律视角

一直以来,人们认为复杂网络的内在是泊松分布,但事实上却是幂律分布。是不是所有基于泊松分布的统计复用需要重新评估呢?比如分组交换网的拥塞控制?但这是后话,本文不谈,本文主要内容是效率和公平。以无标度网络为例,在平滑连续的时间序列ttt中,每单位时间接入一个节点,它会与既有节点创建mmm个链接,在一个总节点数为NNN的网络中,对于已经接入的节点iii,设它的度为KiK_iKi​,其被链接的概率为:p(i)=mKiΣj=1NKjp(i)=m\dfrac{K_i}{\Sigma_{j=1}^NK_j}p(i)=

2021-10-30 06:44:00 1107

原创 37%原则如何优化我们做决定的时间

当需要百(千,万…)里挑一时,需要权衡最优解和效率,有一个37%原则比较有趣。整个择优过程分为两个阶段:观望:在前面kkk个候选者中冒泡记录最优者ppp,其分数为VpV_pVp​,但并不选择。选择:从第k+1k+1k+1个候选者开始,选择第一个满足Vi>VpV_i>V_pVi​>Vp​的候选者iii,择优结束。如果有10000个候选者,遍历10000次的过程中,越往后,找到比前面所有候选者都优秀的候选者的机会越渺茫,此时权衡一下概率和成本,就地抉择也不失为一种好策略,37%原则

2021-10-30 06:15:39 1147

原创 洛伦兹曲线如何度量TCP公平性

洛伦兹曲线一般用来描述收入分配,但实际上收入分配只是一个case,所有涉及固定资源分配的case,都可以用洛伦兹曲线来描述,而基于洛伦兹曲线度量公平性的指标,便是基尼指数。如何理解洛伦兹曲线呢?我给出一个递归构造的方法。设nnn条流总带宽为单位1,xix_ixi​为流iii分配的带宽,很显然Σk=1nxk=1\Sigma_{k=1}^nx_k=1Σk=1n​xk​=1,将所有流按照带宽从小到大排列,均匀分布在横轴上。纵轴为积累带宽百分比,横轴为积累流数量,下图PPP点的意思是,前mmm条流的总带宽占据带

2021-10-23 18:34:52 2769

原创 Jain‘s Faireness index如何度量TCP公平性

导语:本文并非源自于突发奇想。好多年前第一次接触Jain’s Faireness index公式,我甚至记不下来它的形式,也不指望能弄懂它的含义。后来发现任意学科的绝大多数问题都是可以抽象成数学问题,这些数学问题几乎都可以仅通过四则混合运算,开方,简单的微积分描述和解决,而这些知识对于一个小学高年级学生而言都是可以理解的。最近周末偶尔会给小小灌输一些数学思想,顺便用简单的数学去梳理以前自己似懂非懂的专业领域,作此文。但这不是唯一一篇,前面写过多篇,后面也还有。互联网作为一个自治系统,带宽资源在.

2021-10-23 07:10:45 1495

原创 AIMD response function的一般推导

之前我通过Reno算法推导过近似的AIMD response function:https://blog.csdn.net/dog250/article/details/119816289但是不具备普遍性,今天早上在推导MPTCP的coupled cc的时候,觉得那篇论文1里关于稳定状态的守恒律说的不是很严谨,就想不失一般性地推导一个通用的。还是离不开微积分。正好本周的任务之一就是给小小普及微积分,我决定从 盯着变化 开始。从一般表达式求导,几乎很多事情都可以从此开始。顺便写这么一篇。参考经典2。

2021-10-16 10:37:42 1647

原创 Multipath TCP(MPTCP) Congestion Control抛砖引玉

MPTCP是一个全新的古老协议,从效果上看,它对标准TCP的扩展主要体现在两方面:多路径切换:应用程序无感知的前提下在多条链路之间进行切换。负载均衡:使用多条路径同时传输,提高链路带宽利用率。似乎人们对多路径切换更感兴趣,几乎所有MPTCP的资料上都会介绍MPTCP在Wi-Fi和3G之间的透明切换能力,但有趣的是,定义MPTCP的RFC6182中(详见Section 2. Goals1)并没有提到这一点,路径备份似乎是一个附加的功能。从本质(而不是从表面)上看,MPTCP是一个支持流量调度的资源

2021-10-16 06:36:08 1767

原创 如何写一个好的拥塞控制算法

随手写点感想。有人说CUBIC带宽利用率低,有人说BBR存在这样那样的问题,于是很多魔改版本纷至沓来,于是各式各样的实验室CC寒武纪大爆发,最终还是出不了实验室,最终还是这样那样的问题。问题的根源在哪里?如何才能写一个好的拥塞控制算法?在我看来,类似Linux内核中的CUBIC,Vegas,BBR,PCC这样的一个C文件里几个回调函数的CC,几乎已经接近这种形式CC的极限了,很难再有突破。这种形式的算法能利用的信息太少,熵太高,需要更多的信息,但没有。能直接采集到的信息是什么?仅仅是从不断到来的AC

2021-10-01 07:44:42 8550 5

原创 The math behind dynamics of TCP BBR

引BBR中有很多诸如1.25,0.75,0.89,0.77之类的魔数字,它们是调教出来的经验值呢,还是可以用数学推导发出来呢?这些问题在结果导向的当今非常无聊,但也勉强仅图一乐吧。对我自己而言,除了兴趣还有一些执念。我不相信背后没有数学解释的东西,一开始我看不上BBR,就是因为它没有数学模型,类似AIMD,response function那样优美的数学模型,没有Reno/CUBIC中 t=αβpt=\alpha \sqrt {\dfrac{\beta}{p}}t=αpβ​​这样的公式。后来经nea

2021-10-01 06:52:09 3230 3

关于linux内核以及其他个人体会的文集

本文集是我用将近两年的时间写成的,大多数文章是关于linux内核的,另外还有一些我自己对计算机的理解,还有一些历史,音乐方面的东西。适合于对linux内核思想感兴趣的阅读,文章偏重于对于思想的理解。

2009-09-07

一个iptables的stateless NAT模块实现

如果你在寻找Linux上配置诸如Cisco设备上的static双向NAT的方法,这个或许就是你想要的; what?你觉得它完不成PAT?是的,它不行。但是想做PAT为何不使用现有的iptables实现呢?它可以自动为你解决元组唯一性问题。不要从概念上分析,事实上,static双向NAT是完全对称的,一对一的 ,也只有在BOX两边的网络在拓扑级别是完全对等的情形下,这种NAT或许才是有用的,Cisco设备经常处在这样的位置,比如一个很大的stub节点的出口位置,比如两个domain的中间位置... 我将名字取为STATIC-2-WAY-NAT,比较长也比较怪,完全不符合UNIX的小写短名传统,我的想法是:这样可以少写很多的帮助信息,因为名字就是自解释的。

2014-12-27

模块化的nf-HiPAC

原版的nf-hipac需要为内核打patch,且只支持较低版本的内核,构建起来相对比较麻烦。 模块化后的nf-hipac可以直接作为内核可加载模块编译,且适配了高版本的Linux内核。为了移植工作简化,去掉了和iptables模块的联动支持!

2014-11-21

配置文件还有一些other

代码和配置iptables配置文件,还有一些别的东西

2010-04-16

dog250的留言板

发表于 2020-01-02 最后回复 2020-03-21

我的blog为何被屏蔽了,用户名为:dog250

发表于 2009-02-06 最后回复 2017-04-05

《java编程思想》的内容哪里体现了“思想”

发表于 2014-04-01 最后回复 2015-08-26

我的blog被删了,共享文章

发表于 2009-02-07 最后回复 2010-05-14

请删除我的一个资源 【解决并回复】

发表于 2010-04-18 最后回复 2010-05-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除