Next: 5.6 SAM API
Up: 5 Interface Description
Previous: 5.4 FCM Queue Information
  Contents
Subsections
5.5 FCM API
Kernel-doc is used to generate online documentation in HTML format for each
kernel module of FCM from comments within the code. The Router module API can
be found at:
http://www.cs.mu.oz.au/340/s340gm/doc/router.html
The Receiver module API can be found at:
http://www.cs.mu.oz.au/340/s340gm/doc/receiver.html
The FCM logger module API can be found at:
http://www.cs.mu.oz.au/340/s340gm/api-docs.html
As part of the communication between FCM and the kernel, structures defined
elsewhere in the kernel are passed to FCM. These will not be fully described
here, but can be found in the include directory of the kernel source.
The structures are:
- struct skbuff
- Defines a socket buffer which contains a packet
which has been received or is about to be sent. As well as the contents
of the packet, information used to build or receive it is also stored.
The definition can be found in include/linux/skbuff.h
- struct Qdisc
- Defines an instance of a queueing discipline for use
in QOS code. It holds information about the device it has been created
for, as well as any options used in creating it. The definition can be
found in include/net/pkt_sched.h
- struct rtattr
- Encapsulates information about network routes.
Contains just two fields, rta_len and rta_type.
The definition can be found in include/linux/rtnetlink.h
- struct net_device
- Contains all the information the kernel knows
about a network device. This includes information such as the MTU
(Maximum Transmission Unit).
The definition can be found in include/linux/netdevice.h
Next: 5.6 SAM API
Up: 5 Interface Description
Previous: 5.4 FCM Queue Information
  Contents