This document offers information and instructions for anyone who needs to create a protocol stack that your router has not already created automatically. It provides an introduction to the manual creation of protocol stacks for inverse multiplexing, WAN Restoral, and device pools and discusses the stack configuration and monitoring commands in detail. Overview
Protocol Stacks
Displaying Prompts
Configuring Protocol Stacks
Configuring Devices
Protocol Stack Commands
Overview
OpenROUTE(TM) not only creates protocol stacks automatically based on the interfaces and data-link protocols that you defined using the add interface and set data-link commands. It also allows you to create protocol stacks manually for inverse multiplexing, WAN Restoral, and device pools and to use these stacks in multiple configurations. This modular approach to configuring your routers provides better control and greater efficiency in updating and managing your network connections and also provides the flexibility to re-arrange devices in order to use them with particular interfaces. It enables you to mix and match your router configurations.
Terminology
The following list defines the terms used for protocol stacks:
Protocol stacks are created either automatically or manually:
Protocol Stacks
A protocol stack is a modular layering of components stacked one on top of the other and/or stacked on top of a device. The services within the router are the building blocks used to assemble the protocol stacks.
Service Lists
In its simplest form, a service list is a list of modules strung between an interface at the top of the protocol stack and a device at the bottom of that stack. The service list defines the stack.
Table 2 provides definitions of the service list operators.
BASE-1 SL:WANThe lower stack [BASE-1] contains the physical device [WAN] and a MAC layer handler [SL] that controls that device. This protocol stack is named BASE-X where X is the interface number. For example,
NET-1 INT1:PPP:BASE-1
BASE-1 SL:WANThe second stack [NET-1] contains the interface [INT1], the data-link layer software module [PPP], and a reference to the BASE-X protocol stack [BASE-1]. For example,
NET-1 INT1:PPP:BASE-1Having two separate stacks, one referencing the other, provides the flexibility to re-arrange devices to be used with particular interfaces. Separating the stack into upper and lower halves lets each half have its own state. Redefinition of the upper stack does not affect the configuration state of the lower stack. OpenROUTE creates a BASE stack using the serial line (SL) service for each serial device and a BASE stack using Basic Rate ISDN (BRI) for each BRI ISDN device. If DIAL is enabled and if a serial device has Async or Sync Dial enabled, then its BASE stack contains a DIAL service, the SL service, and the device.
Commands for Changing Stacks
Table 3 lists the commands that are available for reconfiguring and managing stacks that the router creates automatically. See Protocol Stack Commands.
Manual Stack Creation
Stacks that you create manually supersede stacks that the router creates automatically.
In addition to being able to create a simple protocol stack, you can also manually create protocol stacks to provide the following:
Configuration ID
OpenROUTE uses an internal numeric identifier (called the configuration ID) to associate configuration parameters for different protocol stack components with a specific protocol stack. OpenROUTE determines this number in one of two ways based on whether the router created the stack automatically, or you created the stack manually:
NET-2 INT2:PPP:BASE-2Which stack's configuration ID does OpenROUTE use to identify the configuration of SL? The answer is always the directly containing stack's, BASE-2 in this example. This is important because now the SL module within BASE-2 can be configured once, and its configuration still remains constant even when you reference BASE-2 from one protocol stack to another.
BASE-2 SL:WAN2
Table 6 defines the commands that you can use to create devices manually.
Simple Stack
The stack example in this section shows a simple GlobeTrotter 60 configured to use PPP over a leased line attached to its sole WAN port. OpenROUTE always provides one interface (interface 1) for the WAN port.
If you configure the following:
Config>set data-link ppp 1OpenROUTE automatically adds the following stacks when you restart your router:
NET-1 INT1:PPP:BASE-1You can manually create an equivalent stack:
BASE-1 SL:WAN
Config>add stack my-isp int1:ppp:sl:wanIf you manually create a protocol stack, that stack supersedes any stacks that the router creates automatically based on the data-link protocol. Also, any configuration information that you entered for the stack that your router created automatically is lost because OpenROUTE assigns a new identifier (ID) for the stack you created manually. Figure 1 illustrates both of these protocol stacks.

Figure 1 Simple Protocol Stack
Inverse Multiplexing
Inverse multiplexing allows you to aggregate multiple physical devices into a single virtual circuit. OpenROUTE uses Multilink PPP (MP) to distribute data from a virtual circuit to and from multiple physical circuits. The physical circuits can be ISDN B-channels (on those routers that support ISDN), or they can be multiple serial interfaces. Example 1
The following is an example of a protocol stack on a GTS 250 that aggregates all four serial ports under one virtual circuit (VC). That VC appears as interface 1 to the protocol forwarders.
Config>add stackFigure 2 illustrates this topology.
Stack Name? invmux
Stack Service-List? int1:ppp:(sl:wan1)&(sl:wan2)&(sl:wan3)&(sl:wan4)

Figure 2 Inverse Multiplexing Stack -- Example 1
Config> network 1sets the line speed for every SL module to 2048000 bits/second. The sl command that accessed SL Config> does not ask you to specify which SL instance must be configured. It does not matter because all instances share the same configuration information.
Circuit Config > sl
SL Config> set speed 2048000
Congig>add stack hayes dial:sl:wan1Config>add stack usr dial:sl:wan2Config>add stack dual_modem_mpp int1:ppp:hayes&usrFigure 3 illustrates this topology.

Figure 3 Inverse Multiplexing Stack -- Example 2
Config> network 1The router knows that these two instances of the DIAL service are in separate stacks (hayes and usr) thus the router prompts you to select the DIAL that you must configure.
Circuit Config <dual_modem_mpp> dial
Select one instance of DIAL by specifying the name of the device
to which it is attached. The devices are WAN1, WAN2: ? wan1
Dial Serial Line Configuration
Dial Config <hayes>......
Dial Config <hayes> exit
Circuit Config <dual_modem_mpp> dial
Select one instance of DIAL by specifying the name of the device
to which it is attached. The devices are WAN1, WAN2: ? wan2
Dial Serial Line Configuration
Dial Config <usr>......

Config>add stack heterogeneous1 int1:ppp:(dial:sl:wan2)&(bri:isdn)An important property of OpenROUTE protocol stacks is that multiple devices aggregated by Multilink PPP (MP) are used in the order listed in the protocol stack service-list. In Example 3, the dial modem would be used for the first leg of the Multilink PPP session. By setting the Bandwidth-on-demand parameters in PPP, you can make the router bring up additional links over the Basic Rate ISDN (BRI) connection to add more bandwidth when the serial line to the modem gets full. Only another OpenROUTE Networks router at the remote site can terminate this type of configuration.Note: You can achieve the same results if you define heterogeneous1 in the following way: add stack heterogeneous1 int1:ppp:base-2&base-3 if you define base-2 as dial:sl:wan2 and base-3 as bri:isdn.

Config>add stack heterogeneous2 int1:ppp:(sl:wan1)&(dial:sl:wan2)This stack provides the same capability that earlier versions of OpenROUTE provided under WAN Restoral, but since OpenROUTE now implements this stacking under Multilink PPP (MP), the router can use all the links defined in the stack simultaneously. When connecting to the remote router, your router uses the leased line first. It only uses the dial circuit when it needs more bandwidth than the leased line has or when the leased line fails. The WAN Restoral capability provides a backup for a serial link in the event of a failure on the leased line. The restoral process involves:
Config>add stack modem_pool (dial:sl:wan1)&(dial:sl:wan2)The three dial-x protocol stacks share the two modems equally, on a first-come, first-served basis. The telephone numbers of the two modems can be distributed to all three remote locations, and then those three remote locations can use either one of the modems to connect to the router.
Config>add stack dial-1 int1:ppp:modem_pool
Config>add stack dial-2 int2:ppp:modem_pool
Config>add stack dial-3 int3:ppp:modem_pool

Displaying Prompts
You configure and monitor stacks from the Config> and + prompts.
To display the Config> prompt, enter the config command at the * prompt.
*configTo display the + prompt, enter the monitor command at the * prompt.
Config>
*monitor
+
Config>add stack
Stack Name?invmux
Stack Service-List?int1:ppp:(sl:wan1)&(sl:wan2)
Config>add device hssi
Device Slot # (0-4) [3]?
Device Name [HSSI3]?
Adding device hssi3 as interface 7
Defaulting Data-link protocol to PPP
Not all parameters apply to all router platforms. Press Space after you type a command to display the available parameters for each command for your router. Enter help for information about using the command line interface. [C] means the command is available at the Config> prompt. [M] means the command is available at the + prompt.
Add [C]
Adds a device, an interface, or a protocol stack.
Syntax: add
add device quad-serial
Device Slot # (0-4) [2]? 1
Device Name [SL1-2]?
Adding device SL1-2 as interface 7
Defaulting Data-link protocol to PPP
The router must be restarted before the new device can be used.
add interface ppp
Select the physical device used to host the interface from the
following list: WAN2, WAN3? wan3
Adding interface 7 linked to base device WAN2-0.
add stack
Stack Name? invmux
Stack Service-List? int1:ppp:(sl:wan1)&(sl:wan2)
change device token-ring
Device Name? Servers
Device Slot # (0-4) [2]? 3
New Device Name [Servers]? Clients
Changing device Servers to Clients
change interface ppp
Interface number [0]? 6
Select the physical device used to host the interface from the
following list: WAN2, WAN3 [WAN2]? wan3
change stack
Stack Name? invmux
Stack Service List? [[int1:ppp:(sl:wan1)&(sl:wan2)]?int1:ppp:(sl:wan3)&(sl:wan4)
clear stack
delete device
Device Name? clients
delete interface
Interface number [0]? 5
delete stack
Stack Name? invmux
disable device
Device Name? TKR1-0
disable interface
Interface number [0]? 1
enable device
Device Name? TKR1-0
enable interface
Interface number [0]? 1
list devices
ETH0-0 slot 0 port 0 Ethernet/802.3
ETH0-1 slot 0 port 1 Ethernet/802.3
ETH0-2 slot 0 port 2 Ethernet/802.3
ETH0-3 slot 0 port 3 Ethernet/802.3
SL1-0 slot 1 port 0 Quad Serial Line
SL1-1 slot 1 port 1 Quad Serial Line
SL1-2 slot 1 port 2 Quad Serial Line
Corporate slot 1 port 3 Quad Serial Line
- Note: Most of these device names are the default names that the router generated. The only name that you provided is Corporate.
list interfaces
Ifc 0, Ethernet/IEEE 802.3 (via device ETH0-0)
(5 Receive Buffers)
Ifc 1, Token-Ring/802.5 (via device TKR1-0)
(10 Receive Buffers)
Ifc 2, Token-Ring/802.5 (via device TKR1-1)
Ifc 3, Point to Point (via device WAN2-0, with Dialer)
Ifc 4, Frame Relay (via device WAN2-1, with LAN Emulation)
Ifc 5, Point to Point (via device WAN2-2)
Ifc 6, Point to Point (via device WAN2-3)
Ifc 7, Point to Point (via device WAN2-0)
list services
Service Description
------- -----------
DIAL Dial Serial Interface
FRLANE Frame Relay LAN Emulation
FRMGR Frame Relay Manager
FRVC Frame Relay Virtual Circuit
HSSI High-Speed Serial Interface
INT3 Interface 3
INT4 Interface 4
PPP Point-to-Point Protocol
SL Serial Line
list stacks
Stack Creator State ID Service List
----- ------- ----- -- ------------
BASE-3 Router Closed 3 SL:SL2-0
FRAME-3 Router Closed 3 FRMGR:BASE-3
invmux User Closed 128 int1:ppp:(sl:wan1)&(sl:wan2)
NET-3 Router Closed 3 INT3:FRVC:FRAME-3
NET-4 Router Closed 4 INT4:PPP:BASE-3
List [M]
At the + prompt, lists device status, interface statistics, available services, and stack definitions.
Syntax: list
list device
Device Hardware CSR Vector State
ETH0-0 Ethernet/802.3 80700000 0 Up
TKR1-0 ProNET-4 80710000 1 Not present
TKR1-1 ProNET-4 80710000 1 Disabled
SL2-0 Quad Serial Line 80720000 2 Up
SLOT3-0 None 80730000 3 Not present
wan5 High Speed Serial 80730000 3 Up
list interface
Self-Test Self-Test Maintenance
Nt Interface Passed Failed Failed
0 Eth/0 1 0 0
1 NULL/0 0 0 0
2 TKR/0 0 0 0
3 FR/0 0 0 0
4 NULL/2 0 0 0
5 NULL/3 0 0 0
6 FDDI/0 0 0 0
list interface 2
Self-Test Self-Test Maintenance
Nt Interface Passed Failed Failed
2 TKR/1 0 1119 0
Token-Ring/802.5 data-link layer on ProNET-4/16 interface
Physical address 000000000000
Network speed 4 Mbps
Max packet size (INFO) 2052
Handler state Testing
Interface Restarts 0
# times Signal lost 0 # times Beaconing 0
Hard errors 0 Lobe wire faults 0
Auto-removal errors 0 Removes received 0
Ring recovery actions 0
Line errors 0 Burst errors 0
ARI/FCI errors 0 Inputs dropped 0
Frame copy errors 0 Token errors 0
Lost frames 0
Input overflows 0 Driver output errors 0
Dest refused 0
Input Buffers Low/Zero 0/ 0
list services
Service Description
------- -----------
DIAL Dial Serial Interface
FRLANE Frame Relay LAN Emulation
FRMGR Frame Relay Manager
FRVC Frame Relay Virtual Circuit
HSSI High-Speed Serial Interface
INT1 Interface 1
INT3 Interface 3
INT4 Interface 4
PPP Point-to-Point Protocol
SL Serial Line
list stacks
Stack Creator State ID Service List
----- ------- ----- -- ------------
BASE-3 Router Open 3 SL:SL2-0
FRAME-3 Router Open 3 FRMGR:BASE-3
invmux User Closed 128 int1:ppp:(sl:wan1)&(sl:wan2)
NET-3 Router Open 3 INT3:FRVC:FRAME-3
NET-4 Router Closed 4 INT4:PPP:BASE-3
set data-link ppp
test device
Name of the device? wan
Testing device WAN...successful
test interface
Interface number [0]? 3Testing network 3 PPP/0...successful