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>