[HN Gopher] Implementing TCP in Rust
       ___________________________________________________________________
        
       Implementing TCP in Rust
        
       Author : mooreds
       Score  : 67 points
       Date   : 2023-11-09 21:03 UTC (1 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | bbss wrote:
       | ICYMI but https://datatracker.ietf.org/doc/html/rfc9293 may be a
       | better place to start in 2023.
        
       | kccqzy wrote:
       | I only read the README so far but I'm not sure if the author
       | realizes that the RFC793 being repeatedly referred to has been
       | obsoleted by RFC9293. I encourage people needing a reference to
       | TCP to start with RFC9293 instead. This is the updated
       | specification that brings together changes from a number of
       | previous RFCs.
        
         | QuanSai wrote:
         | Seriously? Man, HackerNews never changes. No "good job" for
         | engaging in an experimental approach to learning. No "this is a
         | great project to start with, but..." Just a straight-up back-
         | handed correction. lol, Figures.
        
           | koverstreet wrote:
           | There was nothing backhanded about that, that was useful
           | relevant information.
        
           | seanw444 wrote:
           | While I agree with you in most other cases I've seen (this
           | happens a lot), parent wasn't necessarily ragging on the dev,
           | just adding a useful note. I found it helpful, as I wasn't
           | aware there was an updated specification.
        
             | wredue wrote:
             | Is it a case of one just being monstrously easier? Like how
             | everyone makes an HTTP1.1 server but never a higher
             | version.
        
           | speed_spread wrote:
           | Should my shit ever make it to HN, I would be happy for it to
           | get scrutinized by people smarter than me, even for basic
           | stuff. The HN crowd is mostly polite in its criticisms and
           | acknowledges good work. That is, unless you write something
           | like a Rust web framework that's full in unsafes and claim it
           | to be the fastest...
        
           | mcbrit wrote:
           | This was going to be a statement in support, read the
           | classics / rfc793. Priors being you should definitely
           | implement http from the RFC a la 199x, and:
           | 
           | I assumed rfc793 was shorter than 9293; false. 9293 is
           | significantly shorter.
           | 
           | 9293 also has a lot of implementation notes from the past..
           | many years of folks that have done this.
           | 
           | So yeah, 9293. Seems like a solid rec.
        
       | amelius wrote:
       | Can you please add proper error messages, because this is the
       | main problem I have with all networking related issues: I don't
       | get any error messages, just a dead connection.
        
         | ksherlock wrote:
         | The TCP RFC (circa 1974) has an example API with more
         | meaningful error messages than the BSD socket (circa 1982) API.
        
         | dboreham wrote:
         | Break that glass with Wireshark/tcpdump behind it.
        
       | bobobar339 wrote:
       | Thanks for sharing. I look forward to going through this content.
        
       | tomca32 wrote:
       | Oh nice. Just today I started watching Jon Gjengset's video
       | implementing TCP in Rust
       | https://youtu.be/bzja9fQWzdA?si=Gh4s8FHpk9vBVEwZ
        
         | tempusr wrote:
         | There needs to be a statue built for this man. My understanding
         | of Rust and low level computing has become oceanic due this
         | man's hours of videos and books.
        
       | Klasiaster wrote:
       | There is also the Rust TCP/IP stack https://github.com/smoltcp-
       | rs/smoltcp which is not mentioned as reference (and it's probably
       | more useful to have a look there than querying ChatGPT).
        
       ___________________________________________________________________
       (page generated 2023-11-09 23:00 UTC)