Linux Networking Internals Question
Tobin C. Harding
tobin at apporbit.com
Mon Jun 25 18:51:07 EDT 2018
On Sat, Jun 16, 2018 at 11:17:01PM +0530, V.Ravikumar wrote:
> Understood Rami Rosen. Thank you.
>
> Regards
> Ravi
>
> On Sat, Jun 16, 2018 at 11:10 PM, Rami Rosen <roszenrami at gmail.com> wrote:
>
> > Hi Ravi,
> > The path that a packet goes through, from being received by the
> > network driver and up to kernel Layer 3 (IPV4/IPV6) and from
> > there to kernel Layer 4 (UDP/TCP/SCTP/other sockets) and from there to
> > userspace sockets is quite complex. The logic is heavy, on that path
> > there are lookups in routing tables, netfilter hooks, sanity checks,
> > interaction with other subsystems, and more.
> >
> > In order to try to simplify things, and not go into deep technical
> > details, we can say that generally the 5 tuple of the packet (SRC
> > address, DST address, SRC port, DST port and protocol) is what
> > determines to which socket it will go.
> >
> > Regards,
> > Rami Rosen
> > http://ramirose.wixsite.com/ramirosen
> >
> >
> >
> >
> > On 16 June 2018 at 20:16, V.Ravikumar <ravikumar.vallabhu at gmail.com>
> > wrote:
> > > Hi All,
> > >
> > > I wanted to know how a packet received will be handovered to a correct
> > user
> > > process.
> > > Basically I want to understand what are the various header parameters in
> > > packet which will help to find the open socket descriptor of respective
> > > user process. I'm not able to find the exact answers in the web.
Or you could read Rami's book, you will learn a whole bunch :)
Tobin
More information about the Kernelnewbies
mailing list