This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: RedBoot sequencenumber generation


On Dienstag, 16. März 2004 18:39, Mark Salter wrote:
> >>>>> Roland =?iso-8859-15?q?Ca=DFebohm?= writes:
> >
> > On Dienstag, 16. März 2004 18:05, Mark Salter wrote:
> >> >>>>> Roland =?iso-8859-15?q?Ca=DFebohm?= writes:
> >> >
> >> > Hello Mark,
> >> > thanks for helping.
> >> >
> >> > In most cases it works, but if the initial sequencenumber, which
> >> > is now a pseudo random number, is anyhow in the window of the
> >> > TIME_WAIT connections of the host I get the old problem.
> >> > The SYN packet don't get a responce and will be retransmitted
> >> > on and on with the same sequencenumber.
> >>
> >> Retransmitting the same seqnum with the SYN is okay. Interestingly,
> >> the RFCs state that while in the TIME_WAIT state, the server refuses
> >> connection requests using the same tcp socket pair. In the tcpdump
> >> you sent, the second connection uses a different socket pair (port
> >> 7800 vs 7801). Some BSD stacks are more stringent and refuse to reuse
> >> the local port number while in TIME_WAIT. It looks like this is the
> >> problem you are running into.
> >>
> >> However, there is hope. Most BSD implementations allow a new
> >> connection in TIME_WAIT iff the new seqnum is greater than the
> >> final seqnum of the connection in TIME_WAIT. So, here's the same
> >> patch, but with an extra manipulation of initial_seqnum when an
> >> active close FIN is received from the server.
> >
> > Going back I think the not working connection was after a reboot
> > of RedBoot. I tried multiple times and it worked and then I reseted
> > RedBoot. The next try wasn't working. Then I think it is the same
> > socket pair of a connection in TIME_WAIT used before rebooting.
> >
> > So at least after a reboot it is possible to come in this state,
> > there must be a way out (I hope).
>
> Hmm, I think that the only way out after a RedBoot reset is to
> wait it out. After a reset, RedBoot would have no way to know how
> to set the initial seqnum to get around the TIME_WAIT state on
> the server.
>
> RFC 1185 has some good discussion on this subject.

Thank you, I will look at this tomorrow.

Regards,
Roland
-- 

___________________________________________________

VS Vision Systems GmbH, Industrial Image Processing
Dipl.-Ing. Roland Caßebohm
Aspelohe 27A, D-22848 Norderstedt, Germany
http://www.visionsystems.de
___________________________________________________


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]