Slashdot Log In
The Linux Networking Stack Exposed
Posted by
CmdrTaco
on Mon Aug 13, 2007 12:02 PM
from the august-rules dept.
from the august-rules dept.
An anonymous reader writes "The Linux source code is a great way to learn about the design of device drivers for a multitude of device types, including network device drivers. This article will show you the basic architecture of the Linux networking stack and dig into its interfaces for system calls, protocols, and device drivers."
Related Stories
Firehose:The Linux networking stack exposed by Anonymous Coward
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
well (Score:5, Funny)
well-Stripping packets. (Score:3, Funny)
Well the nice thing is that geeks can get their porn at work without tipping anyone off.
Re:well (Score:5, Funny)
Oh yeah?
So, a UDP connection walks into a bar and it goes up to the bartender.
"Hi bartender, " it says to the bartender.
"Howdy, UDP connection. What'll it be?" the bartender asks.
"I'll have a beer please. Here's a dollar," says the UDP connection.
The bartender takes the dollar, looks at the UDP connection, and continues wiping glasses.
"So, what'll it be?" the bartender asks the UDP connection.
The UDP connection forks over another dollar and orders a beer again. The bartender takes the dollar and stares expectantly at the UDP connection as he continues to wipe glasses.
"So, what are you gonna drink, little UDP connection?" the bartender asks.
"I would like a beer please," and the UDP connection gives the bartender yet another dollar. The bartender takes the dollar and promptly starts wiping the counter. He looks thatthe UDP connection and asks,
"Oh, hello there. Can I get you anything?"
"Yes please," responds the UDP connection, "I'd like a beer. Here is a dollar." And the UDP connection gives the bartender yet another dollar.
And so on...
Parent
Re:well (Score:5, Funny)
And when TCP walks into the bar and asks for beer bartender opens the tap and lets beer stream... But before that they have to shake hands three times.
Parent
Re:well (Score:4, Informative)
TCP : Can i get a beer ?
Bartender : You asked for a beer ?
TCP : Yes i did .
Bartender : Ok , here's the beer , that will be
TCP : did you just tell me how much to pay you ?
Bartender : yes i did .
TCP : ok , here's
and say the bartender has bad hearing ;
TCP : Can i get a beer ?
Bartender : You asked for a lemonade ?
TCP : no i didn't .
TCP : Can i get a beer ?
Bartender : Ok , here's the beer , that will be
TCP : did you just tell me how much to pay you ?
Bartender : yes i did .
TCP : ok , here's
TCP constantly verifies that the data was received , while udp only verifies that the data was correct . udp would end up with a lemonade , drink it , and just order a beer again .
Parent
Re:well (Score:4, Funny)
So, a UDP connection walks into a bar and it goes up to the bartender.
"Hi bartender, " it says to the bartender.
"Howdy, UDP connection. What'll it be?" the bartender asks.
"I'll have a beer please. Here's a dollar," says the UDP connection.
The bartender takes the dollar, looks at the UDP connection, and continues wiping glasses.
"So, what'll it be?" the bartender asks the UDP connection.
The UDP connection forks over another dollar and orders a beer again. The bartender takes the dollar and stares expectantly at the UDP connection as he continues to wipe glasses.
"So, what are you gonna drink, little UDP connection?" the bartender asks.
"I would like a beer please," and the UDP connection gives the bartender yet another dollar. The bartender takes the dollar and promptly starts wiping the counter. He looks thatthe UDP connection and asks,
"Oh, hello there. Can I get you anything?"
"Yes please," responds the UDP connection, "I'd like a beer. Here is a dollar." And the UDP connection gives the bartender yet another dollar.
And so on...
So I guess writing stuff down on it's arms would turn the UDP connection into a TFTP session.
Parent
Re: (Score:3, Funny)
Re: (Score:3, Funny)
Oh how ironic
Where's the NetBIOS? (Score:2, Funny)
Banyan Vines! (Score:2)
Wait till a stable version comes out!
Oh wait...nevermind...
Re: (Score:2, Informative)
Expose it, babe! (Score:2, Funny)
What about Minix? (Score:5, Interesting)
I've tried digging around the Linux source code, but find a lot of it fairly confusing simply because of the amount of time and effort you have to invest in understanding the rest of it and general architecture.
With Minix, you can pretty much jump in at any place (being very organized and well separated you can find what you're looking for fast), in 3.0 the core syscalls are separated into different files and the core kernel is only around 5000 lines which you can scan through fairly quickly.
Re: (Score:3, Insightful)
The point of this is to teach people a useful skill so they can help the Linux community. If the goal here was teaching people how to write general device drivers it wouldn't be centered around Linux.
Re: (Score:3, Insightful)
yeah, but learning how to write device drivers for Minix is a pretty useless skill.
What? As long as you learn the concepts you will do just fine. And Minix is a fine example of how to study the principles and concepts of operating system design. Once you understand the basics you can go ahead and get your feet dirty in Linux, Solaris, Mac OS, Windows, whatever you like.
Re:What about Minix? (Score:5, Funny)
Perhaps you should send a link to the kernel devs and suggest they emulate it...
Parent
Re: (Score:3, Funny)
Beg to differ (Score:3, Interesting)
Re:Beg to differ (Score:5, Funny)
Yes, the Linux network stack has always been constrained by the fact that it has to handle networking.
I contributed a series of highly innovative patches that added 3D Graphics and AJAX support to the Linux TCP/IP stack. Were those kernel developers interested? Were they fuck.
Just another reason why Linux will continue to lag behind Windows and OSX in the innovation stakes.
Parent
Re: (Score:3, Funny)
When I saw this headline.... (Score:5, Funny)
Better unexpose the stack code.... (Score:3, Funny)
SCO: How do we get our hands on the code for Linux?
Lawyer: Pay me $$$ and I will get the courts to order it handed over.
SCO: You are such a bargain!
Re:OOOOhhh (Score:5, Funny)
Parent
Re: (Score:3, Funny)
Re: (Score:2)