The Linux Networking Stack Exposed
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."
I doubt we're going to see any +5 funny mods in this one
How come I don't see any references to NetBIOS in the stack?
The Kai's Semi-Updated Website Thingy
Woo! Show us your bits!!
Raunchy! Nasty! A Linux Babe for each one of you!!
No Ports Barred!
"The Linux Networking Stack Exposed"
Well the nice thing is that geeks can get their porn at work without tipping anyone off.
Stop playing with that new-fangled NetBIOS stuff!
Wait till a stable version comes out!
Oh wait...nevermind...
Chas - The one, the only.
THANK GOD!!!
Personally I'd say Minix is much easier to navigate, simpler to understand and a much better starting point for new kernel developers or students to begin with (it was designed primarily as an academic project).
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.
IMHO the networking stack is quite uninteresting. On the bottom, it's constrained by the networking protocols and network interfaces. On the top it's constrained by the Unix and socket interfaces. That doesnt leave a whole lot of room for innovative bits in the middle.
Says she, glancing at the Banyan Vines tape cartridge on the (distant) "Computing History" corner shelf.
For the record, Banyan Vines systems commissioned == 1, Banyan Vines systems taken down the local tip == 9. My garage just couldn't stand the waste of space anymore.
"On the top it's constrained by the Unix and socket interfaces. That doesnt leave a whole lot of room for innovative bits in the middle"
What can't Unix sockets do exactly?
Can you provide any examples of these 'innovative bits'?
was: Re:Beg to differ
davecb5620@gmail.com
The imbedded link is broken. Try here instead: http://www.ibm.com/developerworks/linux/library/l- linux-networking-stack/
Armaments, 2-9-21 And Saint Attila raised the hand grenade up on high, saying, 'O Lord, bless this Thy hand grenade' N
or free as in beer?
...
Inquiring minds would like to know
Here's a work safe video that relates to the main story. Enjoy!
.... I became so excited I nearly had a buffer overflow!
Seems like both the TCP/IP bible and the TCP/IP packet layout is missing from this article, so here it is: /* Per RFC 791 */ /* header length */ /* version */ /* type of service */ /* total length */ /* identification */ /* fragment offset field */ /* time to live */ /* protocol */ /* checksum */ /* source and dest address */
/* Per RFC 793 */ /* source port */ /* destination port */ /* sequence number */ /* acknowledgement number */ /* (unused) */ /* data offset */ /* window */ /* checksum */ /* urgent pointer */
1. the book: TCP/IP Illustrated, Volume 1 by W. Richard Stevens
2.
from netinet/ip.h
struct ip {
uint8_t ip_hl:4,
ip_v:4;
uint8_t ip_tos;
uint16_t ip_len;
uint16_t ip_id;
uint16_t ip_off;
uint8_t ip_ttl;
uint8_t ip_p;
uint16_t ip_sum;
struct in_addr ip_src,ip_dst;
};
from netinet/tcp.h:
struct tcphdr {
uint16_t th_sport;
uint16_t th_dport;
tcp_seq th_seq;
tcp_seq th_ack;
uint8_t th_x2:4,
th_off:4;
uint8_t th_flags;
uint16_t th_win;
uint16_t th_sum;
uint16_t th_urp;
};
don't cut it off www.mgmbill.org
... or SCO might find some "new and improved" infringements on the Unix rights they don't own.
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!
I only look human.
My mother is a halfling and my dad is an ogre, so that makes me an Ogreling
15 seconds back.