On Mon, 2006-12-04 at 21:27 -0800, Roland Dreier wrote: > > So will each new NIC implement some parts of TCP stack in theirs drivers? > > I hope not. The driver we merged (amso1100) did it completely in FW, > with a separate MAC and IP interface for the RDMA connections. I > think we better understand the Chelsio driver pretty well and think it > over carefully before we merge it. >
Chelsio doesn't implement TCP stack in the driver. Just like Ammasso, it sends messages to the HW to setup connections. It differs from Ammasso in at least 2 ways: 1) Ammasso does the MPA negotiations in FW/HW. Chelsio does it in the RDMA driver. So there is code in the Chelsio driver to handle MPA startup negotiation (the exchange of 2 packets over the TCP connection while its still in streaming more). BTW: This code _could_ be moved into the core IWCM if we find it could be used by other rnic devices (don't know yet). 2) Ammasso implments a 100% deep adapter. It does ARP, routing, IP, TCP, and IWARP protocols all in firmware/hw. It had 2 mac addresses simulating 2 ethernet ports. One exclusively for RDMA connections, and one for host stack traffic. Chelsio implements a shallower adapter that only does TCP in HW. ARP, for instance, is handled by the native stack and the rdma driver uses netevents to maintain arp tables in the HW for use by the offloaded TCP connections. Steve. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html