X-MimeOLE: Produced By Microsoft Exchange V6.5
Received: by onstor-exch02.onstor.net 
	id <01C7A79E.CF900D7D@onstor-exch02.onstor.net>; Tue, 5 Jun 2007 11:24:53 -0700
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----_=_NextPart_001_01C7A79E.CF900D7D"
Content-class: urn:content-classes:message
Subject: TXRX network observations and questions
Date: Tue, 5 Jun 2007 11:24:53 -0700
Message-ID: <BB375AF679D4A34E9CA8DFA650E2B04E018A699A@onstor-exch02.onstor.net>
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
Thread-Topic: TXRX network observations and questions
Thread-Index: Acenns+jZfseqkydTlq9Y9CHGG/5Pg==
From: "Jeff Miller" <jeff.miller@onstor.com>
To: "dl-Cougar" <dl-Cougar@onstor.com>

This is a multi-part message in MIME format.

------_=_NextPart_001_01C7A79E.CF900D7D
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

A couple issues that I have uncovered while working on the TXRX network
driver. =20

Cougar uses the BCM1480 MAC instead of the LSI 8104 used on Bobcat and
Cheetah.  The LSI 8104 has several statistics counters that the BCM1480
doesn't have.  Is there any particular requirement for any statistics,
either through SNMP, nfxsh, or TXRX console?  If there is then we may
need to implement in software any missing pieces.

Cougar hardware can not checksum fragmented packets as they are
received.  In Bobcat and Cheetah the LUC would calculate partial
checksums for packet fragments and then software would use the partial
checksums to calculate the full packet checksum.  Cougar (as well as
Bobcat and Cheetah) hardware also does not handle checksums for IP
packets with options.  Does calculating checksums in software for these
cases have any significant performance impact?  Obviously this depends
on how many fragmented packets we see and how fast the software checksum
is.  The data mover DMA could also be used to calculate checksums.

We are not going to see IPv6 packets, right?

Any input on these?
Thanks,
Jeff

------_=_NextPart_001_01C7A79E.CF900D7D
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Dus-ascii">
<META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
6.5.7652.24">
<TITLE>TXRX network observations and questions</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">A =
couple issues</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"> <FONT SIZE=3D2 FACE=3D"Arial">that</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT SIZE=3D2 =
FACE=3D"Arial">I have</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"> <FONT SIZE=3D2 =
FACE=3D"Arial">uncovered</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial"> while working on the TXRX =
network driver.&nbsp;</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"> </SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">Cougar uses the BCM1480 MAC instead of the LSI 8104 used =
on Bobcat and Cheetah.&nbsp; The LSI 8104 has several statistics =
counters that the BCM1480 doesn't have.&nbsp; Is there any particular =
requirement for any statistics, either through SNMP, nfxsh, or TXRX =
console?&nbsp; If there is then we may need to implement in software any =
missing pieces.</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">Cougar hardware can not checksum fragmented packets as =
they are received.&nbsp; In Bobcat and Cheetah the LUC would calculate =
partial checksums for packet fragments and then software would use the =
partial checksums to cal</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">c</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">ulate the full packet checksum.&nbsp; Cougar (as well as =
Bobcat and Cheetah) hardware also does not handle checksums for IP =
packets with options.&nbsp; Does calculating checksums in software for =
these cases have any significant performance impact?</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp; Obviously this depends on how many fragmented =
packets we see and how fast the</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"> <FONT SIZE=3D2 =
FACE=3D"Arial">software checksum is.&nbsp; The data mover DMA =
c</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT =
SIZE=3D2 FACE=3D"Arial">ould</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial"> also be used to calculate checksums.</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">We =
are not going to see IPv6 packets, right?</FONT></SPAN><SPAN =
LANG=3D"en-us"></SPAN><SPAN LANG=3D"en-us"></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 FACE=3D"Arial">Any =
input on these?</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">Thanks,</FONT></SPAN></P>

<P ALIGN=3DLEFT><SPAN LANG=3D"en-us"><FONT SIZE=3D2 =
FACE=3D"Arial">Jeff</FONT></SPAN><SPAN LANG=3D"en-us"></SPAN><SPAN =
LANG=3D"en-us"></SPAN></P>

</BODY>
</HTML>
------_=_NextPart_001_01C7A79E.CF900D7D--
