免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: Godbach
打印 上一主题 下一主题

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

论坛徽章:
0
31 [报告]
发表于 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
32 [报告]
发表于 2011-03-22 11:09 |只看该作者
本帖最后由 Godbach 于 2011-03-22 11:38 编辑

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

论坛徽章:
0
33 [报告]
发表于 2011-03-22 15:38 |只看该作者
确实很贵,上下册140多。。

论坛徽章:
0
34 [报告]
发表于 2011-03-22 18:27 |只看该作者
其实一直以来都有个问题,不知道这算不算与本书相关

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

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

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

评分

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

查看全部评分

论坛徽章:
0
35 [报告]
发表于 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
36 [报告]
发表于 2011-03-22 22:30 |只看该作者
回复 33# aaaaa5aa


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

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

加了多少的值?

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


等待 lmarsin 兄和 hritian 兄的分析。

论坛徽章:
0
37 [报告]
发表于 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
38 [报告]
发表于 2011-03-23 10:26 |只看该作者
我已经订了曹大哥的1.12的情景分析,我初学者,多多包涵

论坛徽章:
0
39 [报告]
发表于 2011-03-23 10:26 |只看该作者
回复 30# hritian


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

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
40 [报告]
发表于 2011-03-23 11:15 |只看该作者
回复 2# send_linux


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

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP