File:  [LON-CAPA] / doc / build / Attic / loncapanetwork.html
Revision 1.1: download - view: text, annotated - select for diffs
Fri Oct 27 02:28:11 2000 UTC (23 years, 6 months ago) by harris41
Branches: MAIN
CVS tags: version_1_0_3, version_1_0_2, version_1_0_1, version_1_0_0, version_0_99_5, version_0_99_4, version_0_99_3, version_0_99_2, version_0_99_1, version_0_99_0, version_0_6_2, version_0_6, version_0_5_1, version_0_5, version_0_4, stable_2002_spring, stable_2002_july, stable_2002_april, stable_2001_fall, conference_2003, STABLE, HEAD
howto's and descriptions of system services associated with LON-CAPA -Scott

<HTML>
<HEAD>
<TITLE>LON-CAPA Network Processes Documentation</TITLE>
</HEAD>
<BODY>
<H1>LON-CAPA Network Processes Documentation</H1>
<P>
Scott Harrison
</P>
<P>
Last updated: 10/26/2000
</P>
<H3>Introduction</H3>
<P>
This file describes issues associated with the basic network
layer of the LON-CAPA system.  When upgrading, installing, or reconfiguring a LON-CAPA system,
it is often necessary to stop and start the network processes so that the code
they are running with is up-to-date.
</P>
<P><I>
There are also secondary network layers associated with the LON-CAPA system
which are discussed elsewhere in the <A HREF="http://install.lon-capa.org/docs/index.html">
documentation</A>.  These include NFS, Appleshare, and Samba (Windows Network Neighborhood).
</I></P>
<P>
There are two basic levels of client-server processes associated with
implementing the LON-CAPA network.
<OL>
<LI><B>Web level</B>: LON-CAPA users communicate with the system through their web browser
<LI><B>Server-to-server level</B>: LON-CAPA machines communicate with other LON-CAPA machines
</OL>
</P>
<H3>Description</H3>
<P>
The web level is implemented through a web server.  LON-CAPA uses the Apache web server.
The apache web server forks off daemon children (<TT>httpd</TT>) which handle client requests
(http requests from web browsers on the internet).  The more http requests, the more daemon children are
made available.
</P>
<P>
LON-CAPA functionality is enabled in the web level through the use of mod_perl.  mod_perl
allows perl modules to be compiled once, and reside in memory in order to coordinate the
interaction of http requests with services and resources provided by the LON-CAPA server machine.
</P>
<P>
The server-to-server level is implemented through forked system processes which communicate with the
TCP/IP protocol.  There are two types of children processes that LON-CAPA server machines maintain.
<OL>
<LI><TT>lonc</TT>- proxy server processes, these allow a LON-CAPA machine to act as a client toward another machine
<LI><TT>lond</TT>- remote command interpreter, these respond to the proxy server processes to allow a LON-CAPA machine
to act as a server toward another machine
</OL>
</P>
<P>
Of course, it becomes exciting when information passed through the web level requires the server to retrieve
data through the server-to-server (TCP/IP) level.  This is handled by a perl module (loaded with mod_perl) that
interfaces to <TT>lonc</TT>.  This perl module is <TT>lonnet.pm</TT>.
</P>
<H3>Managing Network Processes the Normal Way (/etc/rc.d/init.d)</H3>
<P>
<BR>Log in as <TT>root</TT>.  
<BR>To stop the web level: <TT>/etc/rc.d/init.d/httpd stop</TT>
<BR>To start the web level: <TT>/etc/rc.d/init.d/httpd start</TT>
<BR>To restart the web level: <TT>/etc/rc.d/init.d/httpd restart</TT>
<BR>To look at the status of the web level: <TT>/etc/rc.d/init.d/httpd status</TT>
<BR>To stop the server-to-server and web level: <TT>/etc/rc.d/init.d/loncontrol stop</TT>
<BR>To start the server-to-server and web level: <TT>/etc/rc.d/init.d/loncontrol start</TT>
<BR>To restart the server-to-server and web level: <TT>/etc/rc.d/init.d/loncontrol restart</TT>
<BR>To look at the status of the server-to-server and web level: <TT>/etc/rc.d/init.d/loncontrol status</TT>
</P>
<H3>Managing Network Processes the Dirty Way (killing pids directly)</H3>
<P>
<FONT SIZE=+3>Log in as <TT>www</TT></FONT>.  <B>Do not enter these commands as root</B>.
<BR>To stop the server-to-server level: <TT>kill `cat /home/httpd/perl/logs/*.pid`</TT>
<BR>To start the server-to-server level: <TT>/home/httpd/perl/loncron</TT>
<BR>To restart the server-to-server level: <TT>kill `cat /home/httpd/perl/logs/*.pid`; /home/httpd/perl/loncron</TT>
<BR>To look at the status of the server-to-server level: <TT>ps auxwww | grep lonc; ps auxwww | grep lond</TT>
</P>
</BODY>
</HTML>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>