- 论坛徽章:
- 0
|
本帖最后由 aaaaa5aa 于 2011-04-01 12:29 编辑
tp->snd_ssthresh默认是一个很大的值,因此这里就知道了,当拥塞窗口增大到16的时候我们就会进去hystart_update来更新snd_ssthresh.因此hystart_updat换句话来说也就是主要用于是否退出slow start。- static void hystart_update(struct sock *sk, u32 delay)
- {
- struct tcp_sock *tp = tcp_sk(sk);
- struct bictcp *ca = inet_csk_ca(sk);
-
- if (!(ca->found & hystart_detect)) {
- .................................................................
- /*
- * Either one of two conditions are met,
- * we exit from slow start immediately.
- */
- //found是一个是否退出slow start的标记
- if (ca->found & hystart_detect)
- //设置snd_ssthresh
- tp->snd_ssthresh = tp->snd_cwnd;
- }
- }
复制代码 如果不符合,那就得延迟ACK应答数据包,当然这时与delayed_ack与关 |
评分
-
查看全部评分
|