上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 35 下一页

2019年3月7日

摘要: 一、协议栈中的校验和 在IP协议及UDP/TCP协议中都是用了校验和字段,这个字段通常没有人会关注,就好像现在已经没有人知道当时的一个字节中保留的一个校验bit一样。我也是偶尔看我们常用的traceroute功能的时候间接看到了这个字段。traceroute的流程大致是这样的:从1不断的增加IP协议 阅读全文
posted @ 2019-03-07 09:55 tsecer 阅读(1699) 评论(0) 推荐(0) 编辑
摘要: 一、虚拟机磁盘扩容 最开始的时候创建的虚拟机的磁盘容量是20G,运行了一段时间之后,发现磁盘空间已经不够用,需要增加磁盘的容量。想到最简单的方法就是增加磁盘容量,把20G扩容到30G,这里的也有两种方法,一种是现有磁盘的容量,另一种是新加一个硬盘设备。当时使用的是第一种方法,也就是增加虚拟机现在使用 阅读全文
posted @ 2019-03-07 09:54 tsecer 阅读(493) 评论(0) 推荐(0) 编辑
摘要: 一、为什么想到这个问题 昨天在电脑上看视频的时候,发现字幕有些问题。具体的问题就是视频是分两个文件的,但是字幕是单个文件的,所以在看第二个文件的时候字幕就对不上了,而且相差很大,这个时候就需要手动对齐字幕,这个误差大概是50分钟,也就是3K秒左右,播放器貌似又不支持直接设置一个偏移量,所以我就只能通 阅读全文
posted @ 2019-03-07 09:54 tsecer 阅读(1700) 评论(0) 推荐(0) 编辑
摘要: 一、为什么会想到这个问题 主要是想测试下当接收方接收窗口满了之后,此时发送的检测包报文的格式。然后就想到了一个极端的问题:当tcp连接建立起来之后,假设说一方比较缺德(或者说程序有bug),对建立的socket数据不做任何读取操作,这样就让发送方非常尴尬了,因为发送方终究会感知到对方的接收窗口已经满 阅读全文
posted @ 2019-03-07 09:52 tsecer 阅读(962) 评论(0) 推荐(0) 编辑
摘要: 一、接受方有效负载的判断 在rfc793中说明了对于判断接收到的报文是否有负载的判断在Page 24和Page 25之间,其中的原文说明为 A segment is judged to occupy a portion of valid receive sequence space if RCV.N 阅读全文
posted @ 2019-03-07 09:52 tsecer 阅读(1081) 评论(0) 推荐(0) 编辑
摘要: 一、收到报文对于网络地址的判断 对于刚收到的网络数据,经过了NF_IP_PRE_ROUTING过滤之后,开始到达了ip_rcv_finish函数,在该函数的开始做了一个看起来比较诡异的操作,就是判断了这个数据包中的路由dst是否已经设置过了,如果没有设置过则进行路由;这也就是反过来说,一些收到的报文 阅读全文
posted @ 2019-03-07 09:51 tsecer 阅读(407) 评论(0) 推荐(0) 编辑
摘要: 一、报文跨层传递 所有的网络协议栈都告诉我们:TCP/IP协议栈是分层的,低一层的协议无需也不能感觉到上层的协议,这个观念在我的脑海中根深蒂固,并且由衷的赞叹这种设计的思想,但是在经过一些简单的思考就会发现,这种分层并不是绝对的,正如这世间的一切。一个直观的问题是,一样米养百样人,同样的网卡上,可以 阅读全文
posted @ 2019-03-07 09:50 tsecer 阅读(2361) 评论(0) 推荐(0) 编辑
摘要: 基于2.6.32内核 一、现象 在x86_64的64位操作系统环境下,一个程序执行coredump,从coredump文件可以看到,导致coredump的问题是由于执行new操作时分配内存失败导致的。这个问题看起来让人有些莫名惊诧,用掉64bit下的所有虚拟地址空间,这是什么概念(这个惊诧可以用莱芜 阅读全文
posted @ 2019-03-07 09:49 tsecer 阅读(603) 评论(0) 推荐(0) 编辑
摘要: 一、问题的引入 在客户端希望通过http协议到服务器来拉取数据时,这种交互大多就是一次性的交互,客户端从httpsvr把数据拉取回来之后,服务器会主动关闭套接口。通常来说,如果是我们通过传统的PC端来连接,这个问题不是很大,因为这些客户端通常就是专门围着这个httpsvr来转的,就等着httpsvr 阅读全文
posted @ 2019-03-07 09:48 tsecer 阅读(1270) 评论(0) 推荐(0) 编辑
摘要: 一、实例代码 看了下面的例子,可能问题已经非常清晰了,但是这个例子就是为了让问题看起来清晰而故意这么写的,如果是在一个大型的项目中,特别是使用了大量的第三方库,这个问题并不是大家现在见到的这么显而易见的。下面是复现问题的demo: tsecer@harry: cat callpure.cpp #in 阅读全文
posted @ 2019-03-07 09:47 tsecer 阅读(3927) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 35 下一页

导航