On Mon, Dec 11, 2023 at 5:48 PM Yuanhan Liu <y...@fridaylinux.org> wrote:
>
> On Mon, Dec 11, 2023 at 11:32:16AM +0000, Jerin Jacob Kollanukkaran wrote:
> >
> >
> > > -----Original Message-----
> > > From: Yuanhan Liu <y...@fridaylinux.org>
> > > Sent: Monday, December 11, 2023 3:27 PM
> > > To: lib...@googlegroups.com
> > > Cc: dev@dpdk.org; Yuanhan Liu <liuyuanhan....@bytedance.com>
> > > Subject: [EXT] Libtpa: a DPDK based userspace TCP stack implementation
> > >
> > > External Email
> > >
> > > ----------------------------------------------------------------------
> > > Hi all,
> > >
> > > I'd like to share a new DPDK open source project, libtpa(Transport 
> > > Protocol
> > > Acceleration)[0], which is just another userspace TCP stack 
> > > implementation so
> > > far, written from scratch.
> > >
> > > I started this project 3 years ago, while I was searching for a feasible 
> > > open
> > > source project with no luck. There were indeed quite a few options, but 
> > > none of
> > > them actually met my needs. I then started writing one. Likely, there are 
> > > still
> > > other guys out there looking for a high performance and stable userspace 
> > > TCP
> > > stack. This is what this email and libtpa for.
> >
> > Great Yuanhan.
> >
> > If you have time and willing to put effort, I suggest make this part of 
> > dpdk code base
> > as new library (tcp or so) and leverage + improve another existing library 
> > such ip_frag.
> >
> > I believe, that is only way.
> > - This code soon won't soon outdated based on new DPDK version
> > - More community review and contributors
> > - More review and features from NIC vendors PoV.
> > - More arch and driver support.
> > - More quality
>
> Hi Jerin,
>
> Thanks for you suggestion and these really are good points!
>
> Although libtpa is currently designed as a libray, I doubt it would suit
> well as a new library to DPDK. Just taking the code base an example,

I think, number of line won't be a concern for upstreaming

> libtpa so far is about 27K lines of code. The TCP part is only about
> 3K lines of code. All the rest are codes supporting the TCP part, such
> as sock tracing, mem file, mem file auto archive, etc. You can look

I think, key piece would be split the code as reusable library(like
mem file)and leverage
existing libraries like eal trace.

DPDK standardized  the new library addition process without doing a
lot of throw away code.
See https://doc.dpdk.org/guides/contributing/new_library.html

> more from the internals page (or even read the code ;)
>
>    https://github.com/bytedance/libtpa/blob/main/doc/internals.rst
>
> Thanks,
> Yuanhan Liu
>
>
> >
> > Just my 2c.
> >
> > --
> > You received this message because you are subscribed to the Google Groups 
> > "libtpa" group.
> > To unsubscribe from this group and stop receiving emails from it, send an 
> > email to libtpa+unsubscr...@googlegroups.com.
> > To view this discussion on the web visit 
> > https://groups.google.com/d/msgid/libtpa/BY3PR18MB478592AF236C7BBDB0285E3CC88FA%40BY3PR18MB4785.namprd18.prod.outlook.com.
> > For more options, visit https://groups.google.com/d/optout.

Reply via email to