V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ChristopherWu  ›  全部回复第 33 页 / 共 64 页
回复总数  1280
1 ... 29  30  31  32  33  34  35  36  37  38 ... 64  
2019-01-21 19:42:12 +08:00
回复了 snappyone 创建的主题 职场话题 码农还是要多学习,过去一年自我总结
@zhaogaz 握手也有跟挥手一样是 4 次的情况。。。
2019-01-07 22:23:53 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@kaneg 总结得很好
2019-01-07 20:51:21 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@letianqiu 恩,是的。复用就是谢希仁举的例子,但是他的例子只是说了缺点是:连接被多开,而没有用到。但是 SYN FLOOD 一样会有这样的问题,所以核心不是旧的连接信息来到,开了一条没有用的连接。
核心是,旧的 seq 过来,tcp 要识别到此 seq 是否有效。
2019-01-07 20:48:59 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@linKnowEasy 那你对比一下我举出来的类比,以及文中列出的两个类比,看看区别?
>序号不是关键信息, 互相通知准备完成才是关键信息
恰恰相反,我想说明标注的就是:序号才是关键信息。

准备不准备好,只是影响连接是否建立完成。
序列号是否同步到,才影响连接上的数据是否完备,可靠。
2019-01-07 19:03:49 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@lhx2008 @zarte @PureWhiteWu

刚好 @linKnowEasy 你提醒我了,我原来在想这篇文章时,是想举一个更加准确的类比来说明那个类比是不对的。
我就此举一下:

TCP 传递信息可以理解为美国与中国用货船来传货物,但因为一首轮船穿放不下,货物要分开一只只轮船来发货。

所以需要一个序列号来识别该货物是第几个,以便到达后将其拼接回原来的货物。

因为同一条航道(也就是 tcp 连接)上,可能会有多批货物发送(复用 tcp 连接)。发货时,双方需要通知对方这个序列号是从哪里开始( init seq )的,这样才能辨识过来的是不是一个对的货物,以及能拼接成完整的货物。

货物运输拼接( tcp )最重要的是可靠性,如果没有用三次握手来确认双方都可以获得对方的 序列号( seq )的话,就无法知道当前航班(连接)中,对的货物序号是怎么样的了。

***粗略的写了写,这个类比可以说明为什么我文中两个类比是错误的。***
2019-01-07 18:52:29 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@lhx2008 三次握手是建立可靠信道的必要条件。

还有一点我说得不清楚,不是你说的『 TCP 同时建立多条连接的意义』,而是 TCP 可以复用链接。在这种情况下,旧的包也许还在途,但是复用的新连接又有一个新包来了,因此需要 seq 来识别此情况。
2019-01-07 18:04:37 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@hx2008
>所以三次握手本质上还是为了建立多个连接而需要传递初始 SEQ 造成的?

对,你的理解是对的。
我的文中也说道了: 『 TCP 需要 seq 序列号来做可靠重传或接收,而避免连接复用时无法分辨出 seq 是延迟或者是旧链接的 seq,因此需要三次握手来约定确定双方的 ISN (初始 seq 序列号)。』

但现实没有这么理想,因为 seq 是递增的话,要考虑到被人攻击(所以现代 seq 的选择也是比较复杂的,比我说的用计时器递增还要复杂些,如可能用加密,随机选择等方式。)
2019-01-07 17:50:21 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@radiolover 我说得长是因为还要说明 :为什么需要 seq,如何以及为什么需要构造一个独特的 seq 等。
2019-01-07 16:24:06 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@swulling 对概念的 『正确性』苛求一点,是很有好处的,所谓差之毫厘谬以千里。
就如常见的例子:
md5 是加密算法,你也可以说是『不够详细』或者说『不完备』的,但就是错的。md5 勉强可以做加密,但本质上就是不可逆的哈希算法。
再如之前 v 站批判过的『粘包』 的这个国内特有概念,你也不能说这个是『错误的』,但苛求来说,就不应该存在这样的概念。
2019-01-07 16:03:49 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@mrgblues 不算手误,看着舒服就用了- -。具体排版规则我不清楚,没有学过 - -
2019-01-07 15:36:30 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@m3dull 谢谢评论~觉得写的还行,可以关注公众号🙊
2019-01-07 15:05:23 +08:00
回复了 ChristopherWu 创建的主题 程序员 三次握手的误解与错误类比 (RFC 解读)
@e9e499d78f @petelin @swulling

因为上次握手不仅仅是为了确认『对方听到』以及确立连接 这样表面,为了保证后续通信中依赖的 seq 能被双方确认收到,这个才是关键。
2019-01-07 10:12:31 +08:00
回复了 freedom1988 创建的主题 推广 [2019 年首赠] 送 6 本《程序员面试笔试真题与解析》
分子
2019-01-05 21:58:41 +08:00
回复了 MonoLogueChi 创建的主题 问与答 来帮我博客的速度算什么水平
https://yonghaowu.github.io/ 我的也很快- -,但还是要换成自建服务器才行。
2019-01-02 17:56:41 +08:00
回复了 xmlf 创建的主题 PHP 这段取真实 IP 代码有没有需要优化或改进的地方?
@xmlf 不太想看 php 的代码,有点多。我经过多方思虑,目前给出的博客应该总结的没有问题~
2019-01-02 15:25:36 +08:00
回复了 xmlf 创建的主题 PHP 这段取真实 IP 代码有没有需要优化或改进的地方?
我做过这样的事情,可以看看: https://yonghaowu.github.io/2018/11/23/get_reql_ip/ 从限流谈到伪造 IP nginx remote_addr
ps: 刚刚才写了一篇文章,建议各位生活感想与技术博客分开。。我现在生活感想是放在简书上。
麻烦收录一下
http://yonghaowu.github.io
2018-12-26 22:53:54 +08:00
回复了 mathzhaoliang 创建的主题 git git clone 总是报错是为什么?
@xml123 不是,让你看看 ` xxxx/.git/config `这个文件的内容是什么,粘贴一下
1 ... 29  30  31  32  33  34  35  36  37  38 ... 64  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2808 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 24ms · UTC 03:06 · PVG 11:06 · LAX 19:06 · JFK 22:06
Developed with CodeLauncher
♥ Do have faith in what you're doing.