默默的一块石头
发布时间:2020-08-31 16:15:39
1.tcp_init_xmit_timers()void tcp_init_xmit_timers(struct sock *sk){ inet_csk_init_xmit_timers(sk, &tcp_write_timer, &tcp_delack_timer, &tcp_keepalive_timer);}2.tcp_write_timer()static void tcp_write_timer(unsigned long data){ if (!sock_owned_by_user(sk)) { tcp_write_timer_handler(s.........
发布时间:2020-08-25 20:36:18
void tcp_rcv_established(struct sock *sk, struct sk_buff *skb, const struct tcphdr *th, unsigned int len){ /* * standard slow path. */ if (!tcp_validate_incoming(sk, skb, th, 1)) return;step5: if (tcp_ack(sk, skb, flag_slowpath | flag_update_ts_recent) < 0) goto discard; tcp_rcv_rtt_.........
发布时间:2020-08-19 11:46:02
http://chinaunix.net/uid-24683784-id-5384077.htmlps:下面通过wireshark抓包工具看看sack的选项中的block。 pack#26pack#27pack#28 pack#29 &.........
发布时间:2020-08-19 11:08:59
the tcp sack panic selective acknowledgment (sack) 是tcp裡面用到的一個機制,幫助減少丟包重傳導致的擁塞。網路的這一端點就可以利用這個機制,來告訴對端自己收到了哪部分資料,然後對端就知道只需要傳送缺失的這部分資料即可。不過,最近在linux的sack實現裡面發現了一個bu,可能會被遠端.........
发布时间:2020-08-10 14:32:54
重傳機制超時重傳快速重傳sackd-sack重傳機制的其中一個方式,就是在發送數據時,設定一個定時器,當超過指定的時間後,沒有收到對方的 ack 確認應答報文,就會重發該數據,也就是我們常說的超時重傳。tcp 會在以下兩種情況發生超時重傳:超時重傳的兩種情況我們先來了解一.........