On Fri, Aug 30, 2013 at 07:09:16AM -0400, Steve Clark wrote:
On 08/29/2013 04:28 PM, Neil Horman wrote:
>On Thu, Aug 29, 2013 at 01:06:23PM -0700, Les Howell wrote:
>>On Thu, 2013-08-29 at 18:04 +0100, Richard W.M. Jones wrote:
>>>On Thu, Aug 29, 2013 at 10:02:27AM -0700, John Chludzinski wrote:
>>>>I've had a debate with some co-workers about whether or not a
message
>>>>that's sent to the loopback interface makes it way into the IP layer
and
>>>>is fragmented before flowing back up the network stack. Does it?
>>>Can you please not keep creating new top level threads.
>>>
>>>Furthermore, this is not an appropriate mailing list to discuss any
>>>general (not even Linux) networking issues that you may have. It's
>>>more appropriate for a venue such as stackoverflow.
>>>
>>>Rich.
>>I am unsure of the standards for this. I am also curious about the
>>Fedora implementation. I would suspect that the loopback mechanism
>>would be implementation dependent, and that the method used on a
>>particular system would provide valuable information.
>>
>>A usergroup such as stackoverflow would not likely have that
>>information. Therefore this would seem to be the most accurate source
>>for such information IMO.
>>
>>A short and reasonable answer would be beneficial to the group.
>>
>The answer is simple, and as always, contained in the source. lo is defined in:
>drivers/net/loopback.c
>
>It registers an interface using the network driver api, and contains a transmit
>routine. Therefore, all frames that go to the loopback interface go through the
>entire routing stack, and get looped at the driver.
>
>honestly, doing anything less tends to get pretty messy anyway, as you start to
>have to handle all sorts of special cases. Consider the possibility that a
>packet socket is listening on lo when you transmit a tcp frame out of it. If
>you looped it back higher in the stack, you'd have to be sure to clone the skb
>and offer the packet to the packet protocol somewhere in the ip stack. Multiply
>that by every protocol listener available in the kernel and the fan out gets
>unmanageable. Its better to just go down to the driver layer and loop there.
>
>Neil
>
>>--
>>devel mailing list
>>devel(a)lists.fedoraproject.org
>>https://admin.fedoraproject.org/mailman/listinfo/devel
>>Fedora Code of Conduct:
http://fedoraproject.org/code-of-conduct
Hello,
I believe in later kernels there is the option to bypass the tcp stack on the loopback
which will be enabled by default. See this thread.
http://marc.info/?l=linux-netdev&m=134456025709318&w=3
It didn't work properly, for exactly the reason I pointed out above and
several others, so it never got integrated. See:
http://marc.info/?l=linux-netdev&m=134572202724967&w=3
Note the thread is from last september, and it never got picked up.
Neil
--
Stephen Clark
*NetWolves*
Director of Technology
Phone: 813-579-3200
Fax: 813-882-0209
Email: steve.clark(a)netwolves.com
http://www.netwolves.com