mirror of https://github.com/tLDP/LDP
263 lines
8.1 KiB
XML
263 lines
8.1 KiB
XML
<sect1 id="Frame-Relay">
|
|
|
|
<title>Frame-Relay</title>
|
|
|
|
<para>
|
|
Frame relay is a protocol used with leased lines to support speeds up to
|
|
1.544 Mbps. Frame realy uses packet switching over a phone company's
|
|
network. Frame realy connections use a virtual circuit, called
|
|
a PVC (private virtual circuit), to establish connections. Once established,
|
|
connections use a low overhead and do not provide error correction.
|
|
</para>
|
|
|
|
<para>
|
|
A frame realy compatible router is used to attach the LAN to the frame
|
|
relay line. Frame relay lines are available in speeds ranging from 56 Kbps
|
|
to 1.544 Mbps, and varying proportionally in cost. One advantage of frame
|
|
relay is that bandwidth is available on demand: you can install a line
|
|
at 56 Kbps and later upgrade it to a higher speed by ordering the service
|
|
from the carrier, usually without replacing any equipment.
|
|
</para>
|
|
|
|
<para>
|
|
It was specifically designed and is well suited to data communications traffic
|
|
that is of a `bursty' or intermittent nature. You connect to a Frame Relay
|
|
network using a Frame Relay Access Device (FRAD). The Linux Frame Relay
|
|
supports IP over Frame Relay as described in RFC-1490.
|
|
</para>
|
|
|
|
<para>
|
|
The Frame Relay device names are `dlci00', `dlci01' etc for the DLCI
|
|
encapsulation devices and `sdla0', `sdla1' etc for the FRAD(s).
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
Kernel Compile Options:
|
|
|
|
|
|
Network device support --->
|
|
<*> Frame relay DLCI support (EXPERIMENTAL)
|
|
(24) Max open DLCI
|
|
(8) Max DLCI per device
|
|
<*> SDLA (Sangoma S502/S508) support
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Mike McLagan, mike.mclagan@linux.org, developed the Frame Relay
|
|
support and configuration tools.
|
|
</para>
|
|
|
|
<para>
|
|
Currently the only FRAD supported are the Sangoma Technologies S502A,
|
|
S502E and S508.
|
|
</para>
|
|
|
|
<para>
|
|
To configure the FRAD and DLCI devices after you have rebuilt your
|
|
kernel you will need the Frame Relay configuration tools. These are
|
|
available from ftp.invlogic.com. Compiling and installing the tools
|
|
is straightforward, but the lack of a top level Makefile makes it a
|
|
fairly manual process:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
user% tar xvfz .../frad-0.15.tgz
|
|
user% cd frad-0.15
|
|
user% for i in common dlci frad; make -C $i clean; make -C $i; done
|
|
root# mkdir /etc/frad
|
|
root# install -m 644 -o root -g root bin/*.sfm /etc/frad
|
|
root# install -m 700 -o root -g root frad/fradcfg /sbin
|
|
root# install -m 700 -o root -g root dlci/dlcicfg /sbin
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Note that the previous commands use sh syntax, if you use a csh
|
|
flavour instead (like tcsh), the for loop will look different.
|
|
</para>
|
|
|
|
<para>
|
|
After installing the tools you need to create an /etc/frad/router.conf
|
|
file. You can use this template, which is a modified version of one of
|
|
the example files:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
# /etc/frad/router.conf
|
|
# This is a template configuration for frame relay.
|
|
# All tags are included. The default values are based on the code
|
|
# supplied with the DOS drivers for the Sangoma S502A card.
|
|
#
|
|
# A '#' anywhere in a line constitutes a comment
|
|
# Blanks are ignored (you can indent with tabs too)
|
|
# Unknown [] entries and unknown keys are ignored
|
|
#
|
|
|
|
[Devices]
|
|
Count=1 # number of devices to configure
|
|
Dev_1=sdla0 # the name of a device
|
|
#Dev_2=sdla1 # the name of a device
|
|
|
|
# Specified here, these are applied to all devices and can be overridden for
|
|
# each individual board.
|
|
#
|
|
Access=CPE
|
|
Clock=Internal
|
|
KBaud=64
|
|
Flags=TX
|
|
#
|
|
# MTU=1500 # Maximum transmit IFrame length, default is 4096
|
|
# T391=10 # T391 value 5 - 30, default is 10
|
|
# T392=15 # T392 value 5 - 30, default is 15
|
|
# N391=6 # N391 value 1 - 255, default is 6
|
|
# N392=3 # N392 value 1 - 10, default is 3
|
|
# N393=4 # N393 value 1 - 10, default is 4
|
|
|
|
# Specified here, these set the defaults for all boards
|
|
# CIRfwd=16 # CIR forward 1 - 64
|
|
# Bc_fwd=16 # Bc forward 1 - 512
|
|
# Be_fwd=0 # Be forward 0 - 511
|
|
# CIRbak=16 # CIR backward 1 - 64
|
|
# Bc_bak=16 # Bc backward 1 - 512
|
|
# Be_bak=0 # Be backward 0 - 511
|
|
|
|
|
|
#
|
|
#
|
|
# Device specific configuration
|
|
#
|
|
#
|
|
|
|
#
|
|
# The first device is a Sangoma S502E
|
|
#
|
|
[sdla0]
|
|
Type=Sangoma # Type of the device to configure, currently only
|
|
# SANGOMA is recognized
|
|
#
|
|
# These keys are specific to the 'Sangoma' type
|
|
#
|
|
# The type of Sangoma board - S502A, S502E, S508
|
|
Board=S502E
|
|
#
|
|
# The name of the test firmware for the Sangoma board
|
|
# Testware=/usr/src/frad-0.10/bin/sdla_tst.502
|
|
#
|
|
# The name of the FR firmware
|
|
# Firmware=/usr/src/frad-0.10/bin/frm_rel.502
|
|
#
|
|
Port=360 # Port for this particular card
|
|
Mem=C8 # Address of memory window, A0-EE, depending on card
|
|
IRQ=5 # IRQ number, do not supply for S502A
|
|
DLCIs=1 # Number of DLCI's attached to this device
|
|
DLCI_1=16 # DLCI #1's number, 16 - 991
|
|
# DLCI_2=17
|
|
# DLCI_3=18
|
|
# DLCI_4=19
|
|
# DLCI_5=20
|
|
#
|
|
# Specified here, these apply to this device only,
|
|
# and override defaults from above
|
|
#
|
|
# Access=CPE # CPE or NODE, default is CPE
|
|
# Flags=TXIgnore,RXIgnore,BufferFrames,DropAborted,Stats,MCI,AutoDLCI
|
|
# Clock=Internal # External or Internal, default is Internal
|
|
# Baud=128 # Specified baud rate of attached CSU/DSU
|
|
# MTU=2048 # Maximum transmit IFrame length, default is 4096
|
|
# T391=10 # T391 value 5 - 30, default is 10
|
|
# T392=15 # T392 value 5 - 30, default is 15
|
|
# N391=6 # N391 value 1 - 255, default is 6
|
|
# N392=3 # N392 value 1 - 10, default is 3
|
|
# N393=4 # N393 value 1 - 10, default is 4
|
|
|
|
#
|
|
# The second device is some other card
|
|
#
|
|
# [sdla1]
|
|
# Type=FancyCard # Type of the device to configure.
|
|
# Board= # Type of Sangoma board
|
|
# Key=Value # values specific to this type of device
|
|
|
|
|
|
#
|
|
# DLCI Default configuration parameters
|
|
# These may be overridden in the DLCI specific configurations
|
|
#
|
|
CIRfwd=64 # CIR forward 1 - 64
|
|
# Bc_fwd=16 # Bc forward 1 - 512
|
|
# Be_fwd=0 # Be forward 0 - 511
|
|
# CIRbak=16 # CIR backward 1 - 64
|
|
# Bc_bak=16 # Bc backward 1 - 512
|
|
# Be_bak=0 # Be backward 0 - 511
|
|
|
|
#
|
|
# DLCI Configuration
|
|
# These are all optional. The naming convention is
|
|
# [DLCI_D<devicenum>_<DLCI_Num>]
|
|
#
|
|
|
|
[DLCI_D1_16]
|
|
# IP=
|
|
# Net=
|
|
# Mask=
|
|
# Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames
|
|
# DLCIFlags=TXIgnore,RXIgnore,BufferFrames
|
|
# CIRfwd=64
|
|
# Bc_fwd=512
|
|
# Be_fwd=0
|
|
# CIRbak=64
|
|
# Bc_bak=512
|
|
# Be_bak=0
|
|
|
|
[DLCI_D2_16]
|
|
# IP=
|
|
# Net=
|
|
# Mask=
|
|
# Flags defined by Sangoma: TXIgnore,RXIgnore,BufferFrames
|
|
# DLCIFlags=TXIgnore,RXIgnore,BufferFrames
|
|
# CIRfwd=16
|
|
# Bc_fwd=16
|
|
# Be_fwd=0
|
|
# CIRbak=16
|
|
# Bc_bak=16
|
|
# Be_bak=0
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
When you've built your /etc/frad/router.conf file the only step
|
|
remaining is to configure the actual devices themselves. This is only
|
|
a little trickier than a normal network device configuration, you need
|
|
to remember to bring up the FRAD device before the DLCI encapsulation
|
|
devices. These commands are best hosted in a shell script, due to
|
|
their number:
|
|
</para>
|
|
|
|
<para>
|
|
<screen>
|
|
#!/bin/sh
|
|
# Configure the frad hardware and the DLCI parameters
|
|
/sbin/fradcfg /etc/frad/router.conf || exit 1
|
|
/sbin/dlcicfg file /etc/frad/router.conf
|
|
#
|
|
# Bring up the FRAD device
|
|
ifconfig sdla0 up
|
|
#
|
|
# Configure the DLCI encapsulation interfaces and routing
|
|
ifconfig dlci00 192.168.10.1 pointopoint 192.168.10.2 up
|
|
route add -net 192.168.10.0 netmask 255.255.255.0 dlci00
|
|
#
|
|
ifconfig dlci01 192.168.11.1 pointopoint 192.168.11.2 up
|
|
route add -net 192.168.11.0 netmask 255.255.255.0 dlci00
|
|
#
|
|
route add default dev dlci00
|
|
#
|
|
</screen>
|
|
</para>
|
|
|
|
</sect1>
|