WANPIPE MULTILINK PPP SUPPORT ----------------------------- Dependencies: ------------- 1. Compiled (2.4.X) Kernel PPP sync/async layers preferably as modules. make menuconfig under "Network Device Support" Enable PPP, MULTILINK, SYNCPPP ... Note: The 2.2.X kernels need a Multilink patch however it has not been tested with the wanpipe drivers. 2. PPPD Daemon version 2.4.0 or greater 3. Latest Wanpipe drivers. WANPIPE CHDLC driver must be compiled. Description: ----------- The Sync/Async/Multilink PPP is a standard implementation of the PPP protocol implemented in the Linux Kernel, NOT in WANPIPE firmware. Using the Sangoma adapter as a TTY serial card and the Linux PPP Layer a standard PPP connection can be established over a T1/T3 Link or a Modem line. The Sync/Async/Multilink PPP has been developed to address the standard WANPIPE PPP limitations: - The standard WANPIPE PPP (supported in firmware) cannot run on a Secondary port and - Does not support Multilink operation. The Sync/Async/Multilink PPP has two modes of operation: - Sync with Multilink option. Used to establish a PPP connection over sync T1 lines. - Async. Use to establish a PPP connection via MODEM over a telephone line. (Only available on S514-S508 cards) SYNC Mode --------- Using the PPPD daemon, kernel Sync-PPP layer and the Wanpipe sync TTY driver: a PPP protocol connection can be established via Sangoma adapter, over T1 leased line. The 2.4.X kernel PPP layer supports MULTILINK protocol. It can be used to bundle any number of Sangoma adapters (T1 lines) into one, under a single IP address. Thus, efficiently obtaining multiple T1 throughput. NOTE: The remote side must also implement MULTILINK PPP protocol. ASYNC Mode ---------- Using the PPPD daemon, kernel Async PPP layer and the WANPIPE async TTY driver: a PPP protocol connection can be established via Sangoma adapter and a MODEM, over a telephone line. The WANPIPE Async TTY driver simulates a serial TTY driver that is normally used to interface the MODEM to the Linux kernel. NOTE: This option only works on a SECONDARY Port of the S514-PCI/S508- ISA card. Device /dev/ttyWP(0,1,2..) ------------------------- To interface a PPPD daemon to the WANPIPE TTY driver a /dev/ttyWPX X={0,1,3...) device must be created. ex: mknod -m 666 /dev/ttyWP0 c 240 0 Note: 240 is the Major Number 0 is the Minor Number IMPORTANT: This option should only be used if the MULTILINK option desired, to bundle T1 connections together or to simulate a serial async device driver. Otherwise, it is recommended that standard WANPIPE PPP is used. MULTILINK Setup/Configuration ----------------------------- Assuming: - WANPIPE modules have been installed with CHDLC support. - Kernel PPP layer compiled and loaded. - PPPD daemon version 2.4.0 installed. Refer to README.install on how to recompile the kernel/upgrade wanpipe modules. 1. Create a WANPIPE configuration file using the '/usr/sbin/wancfg' GUI configurator. eg: /usr/sbin/wancfg 2. Select Protocol: Sync/Async TTY PPP 3. In Hardware Section: WANPIPE TTY OPTIONS: TTY_MINOR: TTY MINOR represents a TTY port. Options: 0,1,2,3 & Default: 0 It binds a WANPIPE device driver to the /dev/ttyWPX device, where X=(0,1,3,..). For example MINOR number 0 binds a Wanpipe TTY driver to /dev/ttyWP0. Thus, when pppd daemon opens the /dev/ttyWP0 it will reach the device driver whose Minor number is 0. Note TTY_MINOR must differ for each Wanpipe device. TTY_MODE: WANPIPE TTY driver operation mode Options: Sync or Async Default: Sync The driver operation mode must be specified here, since driver cannot obtain the operation mode from the pppd configuration calls. Therefore, if the driver operation mode is Sync than the pppd must be invoked with the sync option. Furthermore, all subsequent drivers must be configured with the same TTY MODE and different MINOR numbers. 3. The wancfg configurator will configure the pppd daemon according to the TTY_MODE selected. It will also prompt the user for MULTILINK support. IMPORTANT: - First wanpipe device shuld/must be a MASTER. Under MASTER configuration, Local and Remote IP addresses must be supplied. - All other wanpipe devices should be setup as SLAVES. There will be no IP setup here. Three files will be created for each Wanpipe device: - /etc/ppp/options.ttyWPX :X is TTY_MINOR number. - /etc/ppp/peers/isp_wanpipeX :X is a wanpipe device number (1-16) - /dev/ttyWPX :X is TTY_MINOR number. 4. WANPIPE TTY drivers must be started before the pppd attempts to open a /dev/ttyWPX device. ex: wanrouter start wanpipe1 In case of MULTILINK, all wanpipe devices should be started before pppd is started. 5. Once the Wanpipe device is started, PPP connection can be established by calling the pppd call script (created by wancfg): ex: pppd call isp_wanpipe1 Start PPP protocol on MASTER device wanpipe1. In case of MULTILINK, after the MASTER device has connected, and a ping test is successful: Start the second link (SLAVE DEVICE) by running pppd call script for the SLAVE device: ex: pppd call isp_wanpipe2 Start PPP protocol on SALVE device wanpipe2 and attach to the MASTERs network interface. 6. For further information on MULTILINK and pppd please refer to: 1. man pppd 2. /usr/local/wanrouter/PPP-HOWTO 3. Call Sangoma Tech Support : Tel: 905-474-1990 Email: techdesk@sangoma.com Sample Cisco 1600 Setup ----------------------- This example setup should be given to an ISP that doesn't know how to setup up Mulitlink PPP on a Cisco box :) Scenaraio: Two Wanpipe S514 adapters connected back to back to a CISCO 1600 via two WAN T1 lines, running MULTILINK PPP, in order to bundle two T1 lines for geater than T1 throughput. 1) Enter the CISCO configuration mode Cisco>enable Cisco>password: Cisco# 2) Configure Global Mulitlink PPP protocol Cisco# config Cisco(config)# multilink virtual_template 1 Cisco(config)# exit 3) Configure Serial0 device for Multilink PPP Cisco# config Cisco(config)# interface serial0 Cisco(config-if)# encapsulation ppp Cisco(config-if)# no ip address Cisco(config-if)# ppp multilink Cisco(config-if)# no shutdown Cisco(config-if)# exit 4) Configure Serial1 device for Multilink PPP Cisco(config)# interface serial1 Cisco(config-if)# encapsulation ppp Cisco(config-if)# no ip address Cisco(config-if)# ppp multilink Cisco(config-if)# no shutdown Cisco(config-if)# exit 5) Configure virtual_template interface Cisco(config)# interface virtual_template 1 Cisco(config-if)# encapsulation ppp Cisco(config-if)# ip address Cisco(config-if)# ppp multilink Cisco(config-if)# exit Cisco(config)# exit Back to Back situation ---------------------- If you are setting up WANPIPE back to back Multilink against an external router: Interface (onboard FT1 CSU/DSU): Cable: Back to Back T1 cable (Part number: 624). Interface (V35): Cable: Back to Back V34 Cable (Part number: 609) Clocking: Clocking must be set to INTERNAL on the WANPIPE side. For all sangoma cables please refer to: http://www.sangoma.com/faqcable.htm Tech Support ------------ For further information on MULTILINK and pppd please refer to: 1. man pppd 2. /usr/local/wanrouter/PPP-HOWTO 3. Call Sangoma Tech Support : Tel: 905-474-1990 Email: techdesk@sangoma.com APPENDIX ======== /etc/ppp/options ----------------------------- persist defaultroute debug kdebug 2 asyncmap 0 sync multilink lcp-echo-interval 5 lcp-echo-failure 12 #On some CISCO routers we must #be in silent mode #silent #DEBUG Only should be commented out in production nodetach ----------------------------- /etc/ppp/peers/isp_wanpipe1 ----------------------------- ttyWP0 #Bind to WANPIPE device wanpipe1 #201.1.1.1:201.1.1.2 #user bonded-isp-username -----------------------------