From: Manikantan Ramadas (mramadas@masaka.cs.ohiou.edu)
Date: 04/20/06
Message-Id: <48EB1BD4-9A97-4518-B820-783F64AC9EFA@irg.cs.ohiou.edu> From: Manikantan Ramadas <mramadas@masaka.cs.ohiou.edu> Subject: Re: tcptrace-bugs HTTP module, owin fix Date: Thu, 20 Apr 2006 14:44:06 -0400
Thanks man. Shall patch this in shortly.
- Mani.
On Apr 19, 2006, at 12:30 AM, Daikichi Osuga wrote:
> Hello
>
> I fixed subtle byte position problem
> of "HTTP module" and "outstanding window calculation"
>
> Regards
> Daikichi Osuga
>
>
> diff -cx*.o tcptrace-6.6.7-org/mod_http.c tcptrace-6.6.7/mod_http.c
> *** tcptrace-6.6.7-org/mod_http.c Mon Dec 27 16:33:37 2004
> --- tcptrace-6.6.7/mod_http.c Wed Apr 19 13:08:34 2006
> ***************
> *** 620,626 ****
> for (pts = phead->next; pts != NULL; pts = pts->next) {
> /* fprintf(stderr,"Checking pos %ld against %ld\n", */
> /* position, pts->position); */
> ! if (pts->position >= position) {
> /* sent after this one */
> return(pts->thetime);
> }
> --- 620,628 ----
> for (pts = phead->next; pts != NULL; pts = pts->next) {
> /* fprintf(stderr,"Checking pos %ld against %ld\n", */
> /* position, pts->position); */
> ! /* TCP ack field means next expected sequence number.
> ! * so, acked sequence comparison should be greater. */
> ! if (pts->position > position) {
> /* sent after this one */
> return(pts->thetime);
> }
> ***************
> *** 864,870 ****
> * processing based on what we learned above.
> */
> state = ContentStateStartHttp;
> ! last_position = pch - pdata + 1;
> /* when was the first byte sent? */
> pget->send_time = WhenSent(&ph->data_head,&ph-
> >data_tail,position);
> --- 866,875 ----
> * processing based on what we learned above.
> */
> state = ContentStateStartHttp;
> ! /* "pch - pdata" is end of current reply message.
> ! * "pch - pdata + 1" is begin of next reply message.
> ! */
> ! last_position = pch - pdata;
> /* when was the first byte sent? */
> pget->send_time = WhenSent(&ph->data_head,&ph-
> >data_tail,position);
> diff -cx*.o tcptrace-6.6.7-org/trace.c tcptrace-6.6.7/trace.c
> *** tcptrace-6.6.7-org/trace.c Mon Dec 27 16:33:37 2004
> --- tcptrace-6.6.7/trace.c Wed Apr 19 12:05:39 2006
> ***************
> *** 2419,2427 ****
> owin = end - start ;
> }
> else {
> ! /* ack always acks 'received + 1' bytes, so subtract 1 ! *
> for owin */
> ! owin = end - (otherdir->ack - 1);
> }
> if (owin > thisdir->owin_max)
> --- 2419,2428 ----
> owin = end - start ;
> }
> else {
> ! /* ack always acks 'received + 1' bytes.
> ! * end is first byte of subsequent segment.
> ! * so just subtract results owin. */
> ! owin = end - otherdir->ack;
> }
> if (owin > thisdir->owin_max)
-- "The quieter you become, the more you can hear." - Baba Ram Dass. ____________________________________________________________________ * Manikantan Ramadas * IRG, OU * http://irg.cs.ohiou.edu/~mramadas * ____________________________________________________________________
This archive was generated by hypermail 2.1.7 : 04/21/06 EDT