From: Vasu M <vasu.kernel@gmail.com>
To: kernelnewbies <kernelnewbies@kernelnewbies.org>
Subject: Relationship between Rx/Tx ring and Skbuff.
Date: Wed, 5 Aug 2020 11:34:52 -0700 [thread overview]
Message-ID: <CAKF=xo+A25848xmGULdB_r9t7LGsgF2ZTKPne8FPBdYDgrxiUg@mail.gmail.com> (raw)
[-- Attachment #1.1: Type: text/plain, Size: 1055 bytes --]
Hi,
I would like to understand the journey of the packet in Linux kernel. There
are many resources that explain this differently but as I have understood
it on a high level, when a packet is received in a NIC, DMA moves the
packets from the NIC frame buffer into the RX ring buffer in the driver. A
hardware interrupt is then raised and the top half moves the packet to the
RX ring buffer. Is it right to understand that the bottom half tasklets
then drain the buffer and move the packets to sk_buff data structure? Are
the RX/TX buffers different from sk_buff in terms of memory regions or the
sk_buff simply points to the physical address of the packets residing in
the RX ring and then does the manipulation of the pointers to send it up
in the kernel IP stack?
I know this is a broad topic but I would like to seek clarification from
the experts on my understanding of packet movement inside the kernel. Or
can you point me to a resource which can be a close explanation about the
implementation on how the kernel handles in > 4.x ?
Thanks,
Vasu
[-- Attachment #1.2: Type: text/html, Size: 1178 bytes --]
[-- Attachment #2: Type: text/plain, Size: 170 bytes --]
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
next reply other threads:[~2020-08-05 18:36 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-05 18:34 Vasu M [this message]
2020-08-06 1:43 ` Relationship between Rx/Tx ring and Skbuff Valdis Klētnieks
2020-08-06 4:52 ` Vasu M
2020-08-28 13:43 ` Richard Sailer
2020-09-04 5:31 ` Mulyadi Santosa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAKF=xo+A25848xmGULdB_r9t7LGsgF2ZTKPne8FPBdYDgrxiUg@mail.gmail.com' \
--to=vasu.kernel@gmail.com \
--cc=kernelnewbies@kernelnewbies.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).