没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
中 代码深入理解— 传输的流程转载
转自
!
""如何传送一个封包# $ %!&
首先'我们要看的第一个 () 是在 !*+ 内的 %'程式会先判断目前
呼叫 %
这个 的传输方向'若是 ,-'则表示此 是要送出去的'因此就会再呼叫
.'所以接着'我们跳到 .
'此 .首先会去检查 %! .'若是目前这个 . 是在睡眠状态
! .'则把此 给丢弃然后会把 .%
设定给 /+下一步'就是去呼叫 .,010和 .2131#32+0,,2.*
4.+%
底下是 .,010 的程式码部份英文说明和程式码'会因为长度的关系而拿掉'所以读者
最好还是拿原本的程式码做对照
.5+.,01067
8
.%+!79#,2+:5;
%).%+!+7.9#,2+50:+;
7更新 的长度'把 的长度加上 6%!/内定值为 <</'
6:6#.%内定值为 </'5#.% 和 31#32+=:+37
*4>?9!/+#.%;
7填入 5#.% 中 (%! % 内的子栏位值 7
.*4.+((+% +% 950:+6% @% ;
.*4.+((+950:+1+,;
.*4.+((+)/950:+)/+,;
%(A9BC'!*)/*B.DA''.*4.+((+)/;
.*4.+((+ +.9;
.*4.+((+(% !+.9;
.*4.+((+! %+(%9;
.*4.+((+%%9;
.*4.+((+$%+!9;
.*4.+((+! %+.9;
.*4.+((+$9;
.*4.+((+ %.%9;
7记录传送所需要花的时间'计算的方式6%!/?6:6#.%7
6:6,2?剩于的封包长度单位为 /7.2+7
7事实上'底下的这一行程式码是个浪费'因为底下又会针对是否为 /% . 或 )
的封包'再计算一次 7
*4C!9C!*4>'.2+;
7若是这是一个 ) 的封包 7
()+E+31#32+0,,2.*4.+%F950:+20,:018
7再一次计算传送所需要花的时间 7
*4C!9C!*4>'.2+;
资源评论
ly5250465
- 粉丝: 1
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功