A few useful Linux Links which i collected from here and there to help out my colleagues...
Linux Network Programming, Part 1: BSD Sockets
Linux Network Programming, Part 2: Creating Daemon Processes
http://www2.linuxjournal.com/lj-issues/issue47/2335.html
In addition to the topics listed below, there are also several ProgrammingTutorials? here..|http://stommel.tamu.edu/%7Ebaum/programming.html#Linux]
Enabling IPv6 Peter Bieringer's IPv6 HowTo
Generalised Networking HOWTOs
Netlink HOWTO (in pdf format) -- by U. of Kansas
More Networking HOWTOs at LinuxStart.com
QoS-related HOWTOs
For Linux 2.4, a lot help is available here: Linux 2.4 Advanced Routing & Traffic Control -- updated very frequently -- tells you about band-width-division, creating traffic 'classes', etc..
Prior to 2.4, __Linux-QoS__-HOWTO -- written with reference to the kernel version 2.1.125
__DiffServ __on Linux HOWTO -- for early 2.2.x series How to install RHL 6.0/2.2.7 for __DiffServ__ -- by NC State U. - 2.2.7
Routing HOWTOs
Advanced routing mini-HOWTO -- by Timur A. Bolokhov Iproute2 Utility Suite HOWTO
Linux 2.4 Advanced Routing HOWTO
Linux 2.4 Advanced Routing & Traffic Control -- updated very frequently -- tells you about Band-width-division, creating traffic 'classes', etc..
http://www.ds9a.nl/2.4Routing/HOWTO//cvs/2.4routing/output/2.4routing.html Mailing list archives
IF you're after some Kernel-related info.., then before, wasting time looking thru the mailing lists, it might be a good idea trying to go here..
Linux Netdev Mailing List - discusses the development of Linux's networking code, including IPv6 and related topics.
The linux-kernel mailing list FAQ -> huge document!
atm.tut.fi mailing list-archive - contains the following: diffserv, ietf-announce, linux-atm, linux-diffserv, policy, rap, rsvp
Misc
http://atm.tut.fi/list-archive/ IP masquerading (many private IPs use one host with official IP for Internet access)
More info. @ Linux Network Administrators Guide -- more detailed
http://www.linuxdoc.org/LDP/nag2/x-087-2-ipmasq.html Linux Iproute2
The Iproute2+tc package allows access to the variety of networking features in the 2.2 kernels such as: Policy routing, NAT, QoS, advanced tunnels, RSVP and DiffServ, etc. NOTE: tc: Linux traffic control
One of the places to get started. -- very detailed. Other site/s:http://defiant.coinet.com/iproute2/ -- not easy to understand
For Iproute2 HOWTO, click here . Mark Lamb has collected some mail list messages that discuss the usage of these tools, here.
__IPv6__ Flow Labels in Linux-2.2.
http://snafu.freedom.org/linux2.2/docs/api-ip6-flowlabels/ Linux 2.4 Linux 2.4 Advanced Routing & Traffic Control -- This site attempts to document how to configure and use 2.4's advanced Routing, filtering and traffic shaping options. Linux 2.4 Status/TODO Page
Wonderful World of Linux 2.4 -- a LONG article by Joe Pranevich, talking bout the 2.4 kernel
So far, from what I've found out, there's also an online-book which serves as an "Introduction to the Linux 2.4 kernel", here.
For related HOWTOs, click here|http://www.moses.uklinux.net/patches/lki.html] .
http://www.moses.uklinux.net/patches/lki.html
Mobile IP related links HUT's implementation on Linux in IPv4
HUT's implementation on Linux in IPv6
http://vesper.tky.hut.fi/mip/ Network Address Translator [NAT?
A general website on Linux NAT
More info. @ Linux Network Administrators Guide -- more detailed
http://www.linuxdoc.org/LDP/nag2/x-087-2-ipmasq.html QoS This section describes QoS support on Linux . For more info. on QoS related links, click here|http://www.linuxdoc.org/LDP/nag2/x-087-2-ipmasq.html] . What is available in Linux QoS support?
Prior to 2.4, the kernel had the following:
What Linux 2.4 can do for you? summarised from here
The iproute2+tc package is required for accessing the QoS features of the kernel. #8216tc#8217 (traffic conditioner) is used to set up queues, classes and filters. It uses netlink sockets to interface with the kernel. -- in English - it does the Band-width-division, creating traffic 'classes', blah, blah ....
There are a few QoS-related HOWTOs here.
QoS Stuff from U. of Kansas U. of Kansas IP-QoS page -- site includes details of their DiffServ testbed, performance measurements, etc.. -- also contains Linux Diff-Serv Patches
__Linux - Advanced Networking Overview V.1
Linux QoS API -- Please note: an API for Linux QoS has been written by U. of Kansas (slides 10-12) Linux QoS Support -- an implementation overview
http://www.ittc.ukans.edu/%7Ersarav/projects/networking/ipqos/diffoverview/ DiffServ For DiffServ Documentation links and general info. click here..?
DiffServ On Linux
From what I understand, 2.2.x series probably does not support DiffServ directly, so it needs patches, available from here. 2.3 kernels already contain all the changes to support Differentiated Services.
My earlier posting about the report made by the University of Kansas on Linux QoS support, the kernel cannot differentiate between Assured Forwarding (AF) and Expedited Forwarding (EF)</u > -- they used a much older kernel version. Hence, for supporting EF and AF forwarding behaviours on a Linux router (old kernels), a tool called Diffspec was developed by the University of Kansas.
Diffspec
Diffspec, can support both EF and AF forwarding behaviours. It is in the form of a daemon diffspec, which runs on a Linux box with enabled QoS features. The code for this tool can be downloaded from here.
From my reading so far, you probably also need the following tools/patches for supporting DiffServ on linux: iproute2, ds-2 patch (both available from here).
A list of Online books devoted to Linux
This page was last updated on the 31st January 2001 at 1701 hrs (Singapore time) Please Note that I no longer maintain this page, but hopefully some of the link listed here shud still be helful to others.. :)
No page links to LinuxLinks.
Notice: ' the kernel cannot differentiate between Assured Forwarding (AF) and Expedited Forwarding (EF)': Bad page name: too long