summaryrefslogtreecommitdiffstats
path: root/usr.sbin/atm/scspd/scspd.8
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/atm/scspd/scspd.8')
-rw-r--r--usr.sbin/atm/scspd/scspd.8443
1 files changed, 443 insertions, 0 deletions
diff --git a/usr.sbin/atm/scspd/scspd.8 b/usr.sbin/atm/scspd/scspd.8
new file mode 100644
index 0000000..1a9b0ab
--- /dev/null
+++ b/usr.sbin/atm/scspd/scspd.8
@@ -0,0 +1,443 @@
+.\"
+.\" ===================================
+.\" HARP | Host ATM Research Platform
+.\" ===================================
+.\"
+.\"
+.\" This Host ATM Research Platform ("HARP") file (the "Software") is
+.\" made available by Network Computing Services, Inc. ("NetworkCS")
+.\" "AS IS". NetworkCS does not provide maintenance, improvements or
+.\" support of any kind.
+.\"
+.\" NETWORKCS MAKES NO WARRANTIES OR REPRESENTATIONS, EXPRESS OR IMPLIED,
+.\" INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY
+.\" AND FITNESS FOR A PARTICULAR PURPOSE, AS TO ANY ELEMENT OF THE
+.\" SOFTWARE OR ANY SUPPORT PROVIDED IN CONNECTION WITH THIS SOFTWARE.
+.\" In no event shall NetworkCS be responsible for any damages, including
+.\" but not limited to consequential damages, arising from or relating to
+.\" any use of the Software or related support.
+.\"
+.\" Copyright 1994-1998 Network Computing Services, Inc.
+.\"
+.\" Copies of this Software may be made, however, the above copyright
+.\" notice must be reproduced on all copies.
+.\"
+.\" @(#) $Id: scspd.1,v 1.2 1998/08/26 21:39:38 johnc Exp $
+.\"
+.\"
+.de EX \"Begin example
+.ne 5
+.if n .sp 1
+.if t .sp .5
+.nf
+.in +.5i
+..
+.de EE
+.fi
+.in -.5i
+.if n .sp 1
+.if t .sp .5
+..
+.TH SCSPD 8 "1998-08-21" "HARP"
+
+.SH NAME
+scspd \- SCSP daemon
+.SH SYNOPSIS
+.B scspd
+[\fB-f\fP <cfg-file>]
+[\fB-d\fP]
+[\fB-T\fP<options>]
+
+.SH DESCRIPTION
+\fIScspd\fP is an implementation of the Server Cache Synchronization
+Protocol (SCSP) for the Host ATM Research Platform (HARP)
+networking software.
+\fIScspd\fP synchronizes the cache(s) of server(s)
+running on a host with the caches of servers on remote hosts.
+SCSP is defined for a number of different protocols, but the present
+version of \fIscspd\fP only supports ATMARP.
+.PP
+By using \fIscspd\fP and \fIatmarpd\fP, one can provide multiple
+ATMARP servers in a single ATM LIS.
+This might be useful, for example, when a LIS consists of a number of
+local-area ATM networks connected by long-distance links.
+Each local-area network could have its own ATMARP server, with all the
+servers' caches being synchronized by SCSP.
+Then, if a long-distance link fails, hosts on a local-area network
+will still have connectivity to other local hosts (since they all use
+the local ATMARP server); when the long-distance link is restored,
+SCSP will re-synchronize the servers' caches, restoring
+connectivity to remote hosts.
+Both \fIscspd\fP and \fIatmarpd\fP must be running before any ATMARP
+cache synchronization can take place.
+.PP
+\fIScspd\fP implements SCSP as specified in RFC 2334, \fIServer Cache
+Synchronization Protocol (SCSP)\fP and
+draft-ietf-ion-scspd-atmarpd-00.txt, \fIA Distributed ATMARP Service
+using SCSP\fP.
+
+When \fIscspd\fP starts, it parses its command line and puts
+itself into the background.
+
+.SH TERMINOLOGY
+Some of the vocabulary associated with SCSP can be confusing.
+In this document, the following definitions are used:
+
+\fBClient server\fP or \fBlocal server\fP means the server running on
+the same host as \fIscspd\fP whose cache is to be synchronized with that
+of one or more remote servers.
+When the word \fBserver\fP is used alone, it means "client server".
+
+\fBRemote server\fP means a server running on some host other than
+the one where \fIscspd\fP is running.
+
+\fBDirectly Connected Server\fP (DCS) means a remote server that
+\fIscspd\fP communicates with directly.
+The remote server will also be running an implementation of SCSP.
+
+\fBCache Alignment\fP (CA) has two meanings.
+The Cache Alignment protocol is a part of the SCSP protocol
+specification, and the Cache Alignment finite state machine (FSM)
+is a finite state machine that implements the Cache Alignment
+protocol.
+
+.SH OPTIONS
+The command-line options are:
+.IP "\fB-f\fP <cfg-file>" 15
+Specifies the name of the configuration file.
+If this option is not specified, \fIscspd\fP looks for the
+file /etc/scspd.conf.
+.IP "\fB-d\fP" 15
+Specifies that \fIscspd\fP is to be run in debug mode.
+In debug mode, the daemon is not put into the background.
+Log messages are written to standard output instead of to
+the log file specified in the configuration file.
+.IP "\fB-T\fP<options>" 15
+Specifies that \fIscspd\fP will trace specified events and messages
+as it executes.
+The \fB-T\fP flag is followed by one or more of the following
+options:
+.in +4
+.ti -4
+\fBc\fP\ -\ trace \fIscspd\fP's CA Finite State Machine (FSM),
+.ti -4
+\fBh\fP\ -\ trace \fIscspd\fP's Hello FSM,
+.ti -4
+\fBi\fP\ -\ trace \fIscspd\fP's Client Interface FSM,
+.ti -4
+\fBC\fP\ -\ trace CA, CSUS, CSU Request, and CSU Reply messages,
+.ti -4
+\fBH\fP\ -\ trace Hello messages,
+.ti -4
+\fBI\fP\ -\ trace interface messages to and from \fIscspd\fP's
+clients.
+.in -4
+.SH CONFIGURATION
+
+The configuration file consists of a sequence of configuration
+statements.
+These statements specify information about the servers,
+both local and remote, whose
+caches are to be synchronized by \fIscspd\fP.
+RFC 2334, \fIServer Cache
+Synchronization Protocol (SCSP)\fP and
+draft-ietf-ion-scspd-atmarpd-00.txt, \fIA Distributed ATMARP Service
+using SCSP\fP
+will be valuable in understanding how to configure \fIscspd\fP.
+
+A configuration statement other than a comment is terminated by a
+semicolon.
+Some statements contain blocks, delimited by braces ("{" and "}").
+Configuration statement keywords are not case-sensitive,
+but some parameters (e.g. interface names) are.
+Configuration statments can span multiple lines.
+
+.SS Comments
+Three types of comments are allowed:
+
+\fB# comments\fP:
+any characters from "#" to the end of the line are ignored.
+
+\fBC comments\fP:
+any characters between "/*" and "*/" are ignored.
+
+\fBC++ comments\fP:
+any characters from "//" to the end of the line are ignored.
+
+.SS "Statements"
+The configuration statements recognized by \fIscspd\fP are:
+
+Server <name> {
+.in +5
+Protocol <protocol ID>;
+.br
+Netif <if_name>;
+.br
+ServerGroupID <ID>;
+.br
+FamilyID <ID>;
+.br
+DCS {
+.in +5
+ATMaddr <ATM address>;
+.br
+ID <host>;
+.br
+CAReXmitInt <int>;
+.br
+CSUSReXmitInt <int>;
+.br
+CSUReXmitInt <int>;
+.br
+CSUReXmitMax <cnt>;
+.br
+HelloDead <cnt>;
+.br
+HelloInt <int>;
+.br
+Hops <cnt>;
+.in -5
+};
+.in -5
+};
+.sp
+Log {
+.in +5
+File <file name>;
+.br
+Syslog;
+.in -5
+};
+.PP
+Where a host address needs to be specified in the configuration file,
+either a DNS name or an IP address in dotted decimal format can
+be used.
+.PP
+ATM addresses are specified as strings of hex digits, with an
+optional leading "0x".
+Fields within the address may be separated by periods, but periods
+are for readability only and are ignored.
+ATM addresses are 20 bytes long.
+The full address, including any leading zeroes, must be given.
+For example:
+.in +5
+0x47.0005.80.ffe100.0000.f21a.0170.0020481a0170.00
+.in -5
+
+.SS "Server Statement"
+The \fBserver\fP statement specifies a client server whose cache
+to be synchronized with the caches of other servers
+running on remote hosts.
+There will be one \fBserver\fP statement in the configuration file
+for each client server whose cache is to be synchronized by \fIscspd\fP.
+The format of the \fBserver\fP statement is:
+.ti +5
+\fBServer <name> { <statements> };\fP
+
+A name must be specified on the \fBserver\fP statement, but it is
+not used by \fIscspd\fP.
+It is expected to give a brief description of the server's purpose.
+
+The \fBserver\fP statement has several sub-statements
+that specify the details of the \fIscspd\fP's configuration.
+They are:
+.IP "\fBProtocol ATMARP;\fP" 5
+The only protocol supported by the current version of \fIscspd\fP
+is ATMARP.
+The \fBprotocol\fP statement must always be specified.
+.IP "\fBNetif <intf>;\fP" 5
+The \fBnetif\fP statement specifies the name of the ATM network
+interface on which a client server is providing service.
+The \fBnetif\fP statement must always be specified.
+.IP "\fBServerGroupID <ID>;\fP" 5
+The \fBServerGroupID\fP statement specifies an identifier for the
+group of servers being synchronized by \fIscspd\fP.
+The ID is specified as a decimal number in the range 0 - 65,535.
+The server group ID must be the same for all servers whose caches
+are being synchronized by an SCSP session.
+That is, the server group ID for a host must be the same for all
+Directly Connected Servers (DCSs) pointed to within a
+\fBserver\fP statement.
+The \fBServerGroupID\fP statement must always be specified.
+.IP "\fBFamilyID <ID>;\fP" 5
+The \fBfamilyID\fP statement specifies an identifier for a family
+of parallel SCSP sessions running between a group of hosts (i.e. a
+set of SCSP sessions with different protocol IDs but the same set
+of servers).
+The ID is specified as a decimal number in the range 0 - 65,535.
+The family ID is currently not used by \fIscspd\fP.
+
+.SS "DCS Statement"
+The \fBDCS\fP statement is a sub-statement of the \fBserver\fP statement
+that specifies the characteristics of a Directly Connected Server (DCS).
+The \fBserver\fP statement will have one \fBDCS\fP statement for
+each DCS that \fIscspd\fP is to exchange information with.
+The \fBDCS\fP statement has a number of sub-statements that specify the
+details of the configuration for the DCS. They are:
+.IP "\fBATMaddr <ATM address>;\fP" 5
+The \fBATMaddr\fP statement specifies the ATM address of the DCS.
+The \fBATMaddr\fP statement must always be specified.
+.IP "\fBID <host>;\fP" 5
+The \fBID\fP statement specifies the SCSP identifier of the DCS.
+For ATMARP, the ID is the IP address or DNS name associated with the
+ATM interface of the DCS.
+The \fBID\fP statement must always be specified.
+.IP "\fBCAReXmitInt <int>;\fP" 5
+The \fBCAReXmitInt\fP statement specifies the interval that is
+allowed to elapse between retransmissions of CA messages.
+If a CA message is sent and an acknowledgement is not received within
+CAReXmitInt seconds, the message will be retransmitted.
+The default value for \fBCAReXmitInt\fP is 3 seconds.
+.IP "\fBCSUSReXmitInt <int>;\fP" 5
+The \fBCSUSReXmitInt\fP statement specifies the interval that is
+allowed to elapse between retransmissions of CSU Solicit messages.
+When a CSUS message is sent, any Cache State Advertisements (CSAs)
+requested by the CSUS that have
+not been received within CSUSReXmitInt seconds will be requested
+again by another CSUS message.
+The default value for \fBCSUSReXmitInt\fP is 3 seconds.
+Be careful not to confuse \fBCSUSReXmitInt\fP and \fBCSUReXmitInt\fP.
+.IP "\fBCSUReXmitInt <int>;\fP" 5
+The \fBCSUReXmitInt\fP statement specifies the interval that is
+allowed to elapse between retransmissions of CSU Request messages.
+When a CSU Request message is sent, any CSAs that are not acknowledged
+by a CSU Reply message within CSUReXmitInt seconds will
+be retransmitted.
+The default value for \fBCSUReXmitInt\fP is 2 seconds.
+Be careful not to confuse \fBCSUReXmitInt\fP and \fBCSUSReXmitInt\fP.
+.IP "\fBCSUReXmitMax <cnt>;\fP" 5
+The \fBCSUReXmitMax\fP statement specifies the number of times that
+a CSA will be retransmitted as described above before SCSP gives up
+on the CSA and discards it.
+The default value for \fBCSUReXmitMax\fP is 5.
+.IP "\fBHelloDead <cnt>;\fP" 5
+The \fBHelloDead\fP statement specifies the Hello Dead Factor that
+will be sent to the DCS in Hello messages.
+A "DCS down" condition will be detected when nothing is received from
+a DCS in HelloDead * HelloInt seconds.
+The default value for \fBHelloDead\fP is 3.
+.IP "\fBHelloInt <int>;\fP" 5
+The \fBHelloInt\fP statement specifies the Hello Interval that
+will be sent to the DCS in Hello messages.
+The default value for \fBHelloInt\fP is 3 seconds.
+.IP "\fBHops <cnt>;\fP" 5
+The \fBHops\fP statement specifies the number of hops (DCS to DCS)
+that will be specified in CSAs originating from the local server.
+This number must be at least as large as the diameter of the
+server group.
+That is, it must be large enough for a CSA to be propagated from
+server to server all the way across the server group.
+The default value for \fBHops\fP is 3.
+
+.SS "Log Statement"
+The \fBlog\fP statement specifies how \fIscspd\fP is to log
+information about its operation.
+\fIScspd\fP can write log information to a file, to the system log,
+or both.
+.IP "\fBFile <file name>;\fP" 5
+The \fBfile\fP statement specifies that \fIscspd\fP is to write
+its log messages to the named file.
+Log messages will be appended to the end of the file if
+it already exists.
+.IP "\fBSyslog;\fP" 5
+The \fBsyslog\fP statement specifies that \fIscspd\fP is to write
+its log messages to the syslog facility.
+\fIScspd\fP writes its messages to syslog with a facility code
+of LOG_DAEMON.
+
+.in -5
+If no \fBlog\fP statement is specified, \fIscspd\fP writes log
+messages to the system log.
+If both \fBfile\fP and \fBsyslog\fP are specified, \fIscspd\fP will
+write log messages to both the named file and the system log.
+
+.SS Examples
+
+An example of a simple configuration file for \fIscspd\fP might be:
+.in +5
+server atmarp_ni0 {
+.in +5
+protocol ATMARP;
+.br
+netif ni0;
+.br
+ServerGroupID 23;
+.br
+DCS {
+.in +5
+.br
+ID 10.1.1.2;
+.br
+ATMaddr 0x47.0005.80.ffdc00.0000.0002.0001.002048061de7.00;
+.br
+hops 2;
+.in -5
+};
+.in -5
+};
+.in -5
+
+This configuration would synchronize the cache of the ATMARP server
+operating on network interface ni0 with the cache of a second server
+running on a host whose IP address is 10.1.1.2.
+Log messages would be written to the system log.
+
+
+.SH SIGNAL PROCESSING
+The following signals can be used to control \fIscspd\fP:
+
+.IP \fBSIGHUP\fP 10
+Reread the configuration file and restart \fIscspd\fP.
+
+.IP \fBSIGINT\fP 10
+Dump debugging information to a file.
+When it receives a SIGINT signal, \fIscspd\fP dumps a summary of
+its control blocks to a text file (see "\fBFILES\fP").
+
+.SH FILES
+
+.IP "/etc/scspd.conf"
+\fIScspd\fP default configuration file name.
+A different file name can be specified with the \fB-f\fP command-line
+option.
+
+.IP "/tmp/scspd.<pid>.<seq>.out"
+Debugging information dump file name.
+\fIScspd\fP writes a summary of its control blocks to this file
+when it receives a SIGINT signal.
+<pid> is the process ID of the daemon and <seq> is a sequence
+number which is incremented every time a dump is taken.
+
+.IP "/tmp/scspd.<pid>.trace"
+Trace file.
+\fIScspd\fP writes trace information to this file if the \fB-T\fP
+option is specified on the command line.
+
+.SH "SEE ALSO"
+\fIatm\fP (8);
+\fIatmarpd\fP (8);
+RFC 2334, \fIServer Cache Synchronization Protocol (SCSP)\fP;
+draft-ietf-ion-scsp-atmarpd-00.txt, \fIA Distributed ATMARP Service
+Using SCSP\fP.
+
+
+.SH BUGS
+If \fIscspd\fP terminates and is restarted, there will be a period of
+instability while previously-synchronized cache entries time out and are
+refreshed.
+
+Please report any bugs to harp-bugs@magic.net.
+
+.SH COPYRIGHT
+Copyright (c) 1994-1998, Network Computing Services, Inc.
+
+.SH AUTHORS
+John Cavanaugh, Network Computing Services, Inc.
+.br
+Mike Spengler, Network Computing Services, Inc.
+.br
+Joe Thomas, Network Computing Services, Inc.
+.fi
+.SH ACKNOWLEDGMENTS
+This software was developed with the support of the Defense
+Advanced Research Projects Agency (DARPA).
OpenPOWER on IntegriCloud