User Chains

From ImageStream Router Documentation

Revision as of 16:29, 19 May 2009 by Syoder (Talk | contribs)
Jump to: navigation, search

User chains are configured via configmgr with the "loadchain" and "addchain" wan.conf commands.

The loadchain command takes a module name and reference name as arguments.

loadchain <module_path/module_name> <reference name>

The addchain command takes the reference name used in the loadchain command, Inetics chain insertion point a priority value (-2 to +2) and optional arguments to the chain. Special default priority values are defined for each insertion point. Using the default priority values will ensure the user chain will be added after any standard Inetics chains.

addchain <reference name> <insertion point> <priority> [additional arguments ...]

The reference name can be any alpha-numeric string. The chain insertion points outlined in the Inetics white paper are:

  • HARDWARE INTERFACE CONTROL (HIC)
Description: Hardware-specific driver with interrupt service routine (ISR) and raw data I/O routines.
Function: Moves streaming network data between host memory and the network interface card.
Examples: PCI 201-ADSL HIC, PCI 530 series HIC, and PCI 1000 series HIC.
  • ENCODED DATA PROCESSOR (EDP)
Description: Processing stage for custom driver software components that manipulate Layer 2.
Function: Provides a chain for installing custom software that processes data link encapsulation.
Examples: Customized frame relay processing; test software that injects data link encapsulation errors.
  • DATA LINK PROTOCOL (DLP)
Description: Driver component for processing standards-based WAN protocols.
Function: Strips and encapsulates standard data link protocols.
Examples: Cisco HDLC, bisync HDLC, frame relay, PPP, multilink PPP, and ATM.
  • DECODED DATA PROCESSOR (DDP)
Description: Processing stage for custom driver software components that manipulate Layer 3.
Function: Provides a chain for installing custom software that processes network encapsulation.
Examples: Firewalls, tunnels, and VPNs; quality of service (QoS) and multicasting applications; test software to inject network encapsulation errors; and custom TCP/IP extensions.

Priority values allow the user chain to be inserted before or after other user chains and standard Inetics chains. Zero is the standard Inetics value so specifying a negative number means your user chain is inserted before the standard chains and a positive number means your user chain is inserted after the standard chains. Configmgr also allows you to specify special default keywords like rx_dpp_default which inserts your chain after any Inetics chains.

  • Transmit insertion points in execution order
  1. tx_fromsys
  2. tx_ddp
  3. tx_dlp
  4. tx_edp
  5. tx_hic
  6. tx_pic
  • Receive insertion points in execution order
  1. rx_pic
  2. rx_hic
  3. rx_edp
  4. rx_dlp
  5. rx_ddp
  6. rx_tosys


Example loading the packet logger chain on the receive ddp chain (after the L2 headers have been removed)

loadchain logger.o logger
!
interface Serial0
encapsulation ppp
addchain logger rx_ddp rx_ddp_default
ip address 192.168.10.1 255.255.255.252
!
Personal tools
Router software releases