浅析TTL

1. 什么是TTL

TTl=time to live,表征数据包在网络上的存活时间。这个time的单位一般是“跳数”。

我们进行ping操作的时候使用的ICMP协议,即采用基于TTL的机制来判断该数据包的传输是否正常。

2. 为什么要有TTL

简单来说,为了避免数据包在网路上的传送路径造成死循环或者无休止的投递下去,每个ip数据包都包含乐一个寿命计数器,这个就是数据包的的生存时间TTL,也叫hop count,只要一个路由器处理过这个数据包,它就递减这个数据包的寿命计数,当寿命计数递减到0的时候,路由器就丢弃该包.

TTL在一定程度上反应了一个IP数据包经过的路由器的多......

代码覆盖率要多少

一天早上,三位程序员分别问大师: 我准备写一些单元测试用例。代码覆盖率应该达到多少为好? 大师对三位程序员的回答却迥然不同,这是为什么呢?

一大早,一个年轻的程序员问大师:

“我准备写一些单元测试用例。代码覆盖率应该达到多少为好?”

大师回答道:

“不要考虑代码覆盖率,只要写出一些好的测试用例即可。”

年轻的程序员很高兴,鞠躬,离去。

之后没多久,第二个程序员问了大师同样的问题。

大师指着一锅烧沸的水说:

“我应该往这个锅里放多少米?”

这个程序员看起来被难住了,回答道:

“我怎么会有答案?这取决于要给多少人吃,他们饿不饿,有什么......

环形缓冲区

1.环形缓冲区

使用数组缓存内容。这个数组是先进先出的。数组的尾部和头部看成连在一起的

访问速度快,CPU cache友好,线程安全

参考资料1

参考资料2