Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Jun 2000 22:24:35 +0900
From:      Noritoshi Demizu <demizu@acm.org>
To:        freebsd-net@FreeBSD.ORG
Subject:   question on tcp_xmit_timer() of FreeBSD 4.0R
Message-ID:  <20000620222435Z.demizu@dd.iij4u.or.jp>

next in thread | raw e-mail | index | archive | help
I have a question about the 2nd argument "rtt" of tcp_xmit_timer()
of FreeBSD 4.0R.

Why are the 2nd arguments in following code calculated differently ?
i.e. for timestamp option, +1.

  l.1857, netinet/tcp_input.c, tcp_input()
		if (to.to_flag & TOF_TS)
			tcp_xmit_timer(tp, ticks - to.to_tsecr + 1);
		else if (tp->t_rtttime && SEQ_GT(th->th_ack, tp->t_rtseq))
			tcp_xmit_timer(tp, ticks - tp->t_rtttime);

Why is `1' subtracted from the 2nd argument "rtt" here ?

  l.2448, netinet/tcp_input.c, tcp_xmit_timer()
		delta = ((rtt - 1) << TCP_DELTA_SHIFT)
			- (tp->t_srtt >> (TCP_RTT_SHIFT - TCP_DELTA_SHIFT));

These codes works for 3.x and earlier versions.  But I am not sure
they are still OK for 4.0R.  I could not explain to students, so,,,
could somebody help us?

Thank you very much.

Noritoshi Demizu


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000620222435Z.demizu>