Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 30 May 2011 15:02:17 +0300
From:      Catalin Nicutar <catalin.nicutar@gmail.com>
To:        soc-status@freebsd.org
Subject:   TCP UTO - Weekly Report 1
Message-ID:  <BANLkTinuofnS3Ctn1xCrEpzV27SbsA3OTg@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hello!

I am Catalin Nicutar and I am working as a GSoC student towards implementing
TCP UTO for FreeBSD.

* Short TCP UTO description

UTO stands for User Timeout Option. This option is described in RFC5482.
The concept of "User Timeout" is well specified in RFC793 as a general
timeout used for various purposes (In particular TCP will tear down the
connection if this timeout expires in any state). TCP UTO specifies that
a peer should be allowed to advertise this value to provide a hint to the
other side.

RFC 793 specifies that a user should be allowed to specify a timeout for
"Open" and "Send" (the last timeout specified overrides previous values).
FreeBSD (and other Unix implementations) generally support an option called
SO_SNDTIMEO. However, there is no provision for advertising this value.

The ability to change the local value is useless if not advertised to the
other peer since he will still close the connection after *his* timeout
expires (in other words he has no idea of the User Timeout chosen by the
other side).

* Benefits

TCP UTO augments the flexibility of a connection. It allows to specify
relaxed timeouts (large periods of silence during which the peers might
actually not be connected) or short timeouts to inform peers that the
connection will pe torn down quickly in case they don't ACK data quickly
enough.

My goals for this week are:
	* Add sysctls to control the imposed upper and lower limits for the
        User Timeout of a connection
	* Add a sysctl to globally enable the advertising of the timeout (as
        required by the RFC)
	* Add socket options (setsockopt) for enabling the option,
	controling whether the local timeout will be changeable, etc.

The Perforce space I will be working in is
http://p4web.freebsd.org/@md=d&cd=//depot/projects/soc2011/&dw=u&c=MER@//depot/projects/soc2011/cnicutar_tcputo_8/?ac=83


This is all for report 1. If you have questions, suggestions or advices
drop me an email to cnicutar@FreeBSD.org

Catalin Nicutar



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