免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: Godbach

TCP/IP实现刨根究底大讨论【活动结束】 [复制链接]

论坛徽章:
0
发表于 2011-03-22 11:07 |显示全部楼层
回复 26# sjtlqy


    我也是买了,基本没怎么看。
    这本书貌似当工具书会比较好,内容比较新,特色就如作者说的那样,tcp协议栈讲的是我看到的书里面讲的最详细的。

评分

参与人数 1可用积分 +6 收起 理由
Godbach + 6 感谢分享

查看全部评分

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2011-03-22 11:09 |显示全部楼层
本帖最后由 Godbach 于 2011-03-22 11:38 编辑

回复 30# hritian
欢迎 hritian 兄分享一下研究 TCP/IP 协议栈的方法。

论坛徽章:
0
发表于 2011-03-22 15:38 |显示全部楼层
确实很贵,上下册140多。。

论坛徽章:
0
发表于 2011-03-22 18:27 |显示全部楼层
其实一直以来都有个问题,不知道这算不算与本书相关

大家都知道TCP连接的建立是要通过三次握手,而TCP头里面有个COUNT(32位)是用于标识包的顺序,

每次传一个包之后count的值要加上1,我想问的是建立三次握手时,这个count序号是不是要增加,是增

加了多少的值?能不能详细的讲一下建立三次握手时TCP头的数据相关变化情况

评分

参与人数 1可用积分 +2 收起 理由
Godbach + 2 欢迎提问

查看全部评分

论坛徽章:
0
发表于 2011-03-22 22:27 |显示全部楼层
回复 33# aaaaa5aa


    SYN和FIN都会占一个序号,因此在握手过程中,没有负载的情况下,会递增1

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2011-03-22 22:30 |显示全部楼层
回复 33# aaaaa5aa


    大家都知道TCP连接的建立是要通过三次握手,而TCP头里面有个COUNT(32位)是用于标识包的顺序,

每次传一个包之后count的值要加上1,我想问的是建立三次握手时,这个count序号是不是要增加,是增

加了多少的值?

你说的这个是序列号 seq。
每发一次包不是增加 1,而是 seq + len, 这个 len 指的是 TCP 数据部分的长度
能不能详细的讲一下建立三次握手时TCP头的数据相关变化情况


等待 lmarsin 兄和 hritian 兄的分析。

论坛徽章:
0
发表于 2011-03-23 10:09 |显示全部楼层
回复 35# Godbach

tcp包头只有个seq和ack位,没有所谓的count。
seq和ack的作用是为了实现可靠传输机制,seq是表示当前数据包的序号,ack是表示已经确认的数据的序号。通过seq和ack,接收方就可以知道对方发送过来的数据是否是顺序的,类似的发送发通过ack就能够知道有多少数据包被确认,同时在tcp协议的早期,没有开启sack选项以前,3个重复的ack包,还是发送方判断丢包的标志(事实上2年前淘宝(百度好像也是)还没有启用sack)。
seq,我要是没有记错的话,新数据包的skb->seq = tp->snd_nxt,每次有新的数据包发送以后会刷新snd_nxt =skb->end_seq,
skb->end_seq = skb->seq + 数据包内容长度 + flag |(FIN|SYN)

评分

参与人数 1可用积分 +8 收起 理由
Godbach + 8 感谢分享

查看全部评分

论坛徽章:
0
发表于 2011-03-23 10:26 |显示全部楼层
我已经订了曹大哥的1.12的情景分析,我初学者,多多包涵

论坛徽章:
0
发表于 2011-03-23 10:26 |显示全部楼层
回复 30# hritian


    我已经订了曹大哥的1.12的情景分析,我初学者,多多包涵

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2011-03-23 11:15 |显示全部楼层
回复 2# send_linux


    俺都没这书啊,如何指出书中的问题撒。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会

【架构革新 高效可控】2020年12月21日-23日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP