Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 15 Jun 2009 01:36:18 -0400
From:      Zach Riggle <zachriggle@gmail.com>
To:        soc-status@freebsd.org
Subject:   Status Report June 14
Message-ID:  <0F261206-84C6-41A4-9768-CB2F791BDBCA@gmail.com>

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

--Apple-Mail-2-449006597
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed;
	delsp=yes
Content-Transfer-Encoding: 7bit

Status report from this week... more work on getting the framework in  
place.  I'm trying to make it as flexible as possible, so that there  
won't have to be too many instances of tacked-on functionality.  The  
last thing to do before the core functionality is done is to implement  
(cleanly) TCP and IP checksumming.  The PCS library faced some issues  
with this, since the TCP-layer object is unaware of the IP-layer  
object.  Since TCP checksum requires IP-level information (addresses,  
etc.) a mild kluge was implemented to traverse back up a packet  
"Chain" -- the problem with this being that, if the same TCP object is  
used in more than one chain, it will just use the  data from one of  
them.  The TCP state machine that I implemented is aware of the  
necessary IP information, and can generate a pseudo-IP header (per the  
RFC) that will be used for TCP checksumming, essentially sidestepping  
this problem.  A more graceful solution (which I may implement as a  
patch for PCS) is to pass a 'parent' object to the pcs.Packet.encode  
method.

More as it happens.  As always, the blog is the best place for up-to- 
date news: gsoc-tcpregression
--Apple-Mail-2-449006597--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0F261206-84C6-41A4-9768-CB2F791BDBCA>