doc updated
This commit is contained in:
parent
f77b096122
commit
db1e1880ab
|
|
@ -1,2 +1,3 @@
|
|||
Makefile
|
||||
Makefile.in
|
||||
fsp-faq.html
|
||||
|
|
|
|||
113
doc/4LAMERZ.TXT
Normal file
113
doc/4LAMERZ.TXT
Normal file
|
|
@ -0,0 +1,113 @@
|
|||
########### ### # ########
|
||||
### ## ## ### ### ##
|
||||
### ## # ## ### ##
|
||||
### # # ## ### ##
|
||||
### # # # ### ## Why 4 U riding this phile? 4u l8m3r?
|
||||
### # ### ##
|
||||
### # ### ##
|
||||
### # ## ### ##
|
||||
### # #### ### ## You 4 at r8t platz!
|
||||
####### ##### #######
|
||||
### # ###### ###
|
||||
### # ##### ###
|
||||
### #### ###
|
||||
### ## ### w e l c o m e
|
||||
### ### ###
|
||||
### ## ### t o
|
||||
### ## ###
|
||||
### ## ###
|
||||
### # # ### L8mer guide to FSP
|
||||
### ## ## ###
|
||||
### ### # ### LQ Version
|
||||
##### # ###### ##### Oct 2004
|
||||
|
||||
Why you need it
|
||||
|
||||
- stealth operation
|
||||
- old proven software with 10 years history
|
||||
- for EliTe only
|
||||
- attack resistant
|
||||
- lamerz hates it
|
||||
|
||||
STuFF firSt!
|
||||
|
||||
you neeeed to get a p-file called cygwin1.dll. lamerz at www.cygwin.com
|
||||
have some. Grab a copy, man. Copy it to your winlost sistema32 dyr.
|
||||
|
||||
Have it? Right.
|
||||
|
||||
|
||||
Now rock!
|
||||
|
||||
There is a p-file fspd.exe. This is for stuff sharing.
|
||||
Running this is easy:
|
||||
|
||||
fspd.exe -d c:\your\stuff\to\share -p 53
|
||||
|
||||
this number is important. Recommended numbers for stealth
|
||||
operation are: 53, 2090, 137-139, 13, 21, 80, 443
|
||||
You can be catched more easily with bad number, so chooze wisely. Rememmber,
|
||||
some numbers like 2221 are used only by Elite! do not try it at
|
||||
home; bad thingz can hepen. you know. police will certainly
|
||||
take a visit.
|
||||
|
||||
Get more stuff!
|
||||
|
||||
Of course that you want to have the latest stuff, isn't it?
|
||||
You must have some addresses of other ppl. They looks like
|
||||
1.2.3.4 45
|
||||
|
||||
There is a p-file fsp.exe. This is for getting new stuff.
|
||||
run it.
|
||||
fsp.exe
|
||||
fsp>
|
||||
now type commands.
|
||||
|
||||
You need to know a few:
|
||||
open 1.2.3.4 45 -- connects to site
|
||||
get file -- get new stuff
|
||||
put file -- send your stuff
|
||||
pro -- show your access level
|
||||
dir -- list directory
|
||||
quit -- go to sleep.
|
||||
|
||||
We will give you some nice starting numbers for free. There are not a high
|
||||
quality, but this is lq version of this guide. we can sell you
|
||||
much better guide - hq version. Try to offer something.
|
||||
|
||||
912.000.000.102. 2056
|
||||
234.234.234.823. 55
|
||||
123.578.866.346. 34567
|
||||
432.333.134.23 5436
|
||||
543.47.5436.5432 5432
|
||||
4352.532.532.21.54 4365
|
||||
4312.5637.4332.5432 4325
|
||||
324.43652.6543.4321 6547
|
||||
431.142.654.3112.3243 542
|
||||
1.34.342.543 542
|
||||
321.312.653.645 5432
|
||||
9.02.1.0 6969
|
||||
127.0.0.7 56
|
||||
192.168.45.21 108
|
||||
10.20.30.40 5060
|
||||
|
||||
never try to flood fsp server, this does not work, elite will lauch
|
||||
at you and cut your accez down. remember, you ar elite, not a kiddie!
|
||||
|
||||
-----**************------*******************----------************---
|
||||
|
||||
for HQ version of this guide send
|
||||
20 bucks to
|
||||
e-gold.com account
|
||||
number 550694
|
||||
|
||||
Features included:
|
||||
list of hq quality sitez
|
||||
how to setup upload facility
|
||||
how to search for new sitez
|
||||
special seek tool
|
||||
and 3 secret bonuzez
|
||||
|
||||
!We Do NOT sEnDZ hQ guiDe to LAmeRZ! Prove yourself first.
|
||||
|
||||
------*****-----------******************--------------**************---
|
||||
|
|
@ -1,2 +1,8 @@
|
|||
## Process this file with automake to produce Makefile.in
|
||||
EXTRA_DIST=faq.html PROTOCOL HISTORY fsp-faq.sgml
|
||||
EXTRA_DIST=faq.html PROTOCOL HISTORY fsp-faq.sgml fsp-faq.html
|
||||
|
||||
noinst_DATA = fsp-faq.html
|
||||
|
||||
SUFFIXES = .html .sgml
|
||||
.sgml.html:
|
||||
sgmlfmt -d docbook -f html $<
|
||||
|
|
|
|||
22
doc/PROTOCOL
22
doc/PROTOCOL
|
|
@ -1,7 +1,7 @@
|
|||
FILE SERVICE PROTOCOL VERSION 2
|
||||
|
||||
Document version 0.10
|
||||
Last updated 18 Oct 2004
|
||||
Document version 0.11
|
||||
Last updated 24 Oct 2004
|
||||
|
||||
Also known as
|
||||
File Slurping Protocol,
|
||||
|
|
@ -184,13 +184,24 @@ FSP File servers MUST supports following commands:
|
|||
file position: position in directory
|
||||
data: ASCIIZ directory name
|
||||
xtra data: (not required)
|
||||
word - size of reply's optional data block
|
||||
word - prefered size of directory block
|
||||
|
||||
reply
|
||||
file position: same as in request
|
||||
data: directory listing (format follows)
|
||||
xtra data: not used
|
||||
|
||||
Directory listing is transfered in similar way as file transfer. Directory
|
||||
listing is divided into blocks of equal size, only exception is last block
|
||||
which can be shorter. Default and maximum size of directory listing block is
|
||||
1024 bytes. Size of directory block can be changed by server using extra
|
||||
data information sent by client.
|
||||
|
||||
Directory blocks can't be split accross message boundary and client
|
||||
can't do seeking to any arbitary offset, which can broke dirblock
|
||||
into 2 messages. In short: Every message can contain only one
|
||||
unsplited directory block.
|
||||
|
||||
RDIRENT is the structure of a directory entry contained in a directory listing.
|
||||
Each entry contains a HEADER, which has 4 bytes quantity 'time' in Unix
|
||||
standard format, a 4 bytes quantity 'size', and 1 byte of 'type'. Header is
|
||||
|
|
@ -201,8 +212,9 @@ At this point, if the next RDIRENT entry to follow will spread across 1k
|
|||
boundary, then two possible things will happen:
|
||||
|
||||
1) if the HEADER fits between this entry and the 1k boundary,
|
||||
a complete header will be filled in with a 'type' set to RDTYPE_SKIP.
|
||||
Repeat this step as neceseary until no HEADER fits.
|
||||
a complete header will be filled in with a 'type' set to RDTYPE_SKIP
|
||||
and no name followed - just pad to 1k boundary. Clients which sees
|
||||
RDTYPE_SKIP header skips over next data in packet.
|
||||
2) if the HEADER does not fit, then simply pad to the 1k boundary.
|
||||
|
||||
This will make sure that messages carrying directory information carry only
|
||||
|
|
|
|||
571
doc/fsp-faq.sgml
571
doc/fsp-faq.sgml
|
|
@ -1,4 +1,4 @@
|
|||
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V4.2//EN" [
|
||||
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
|
||||
<!-- define some ENTITYs -->
|
||||
<!ENTITY fsp "File Service Protocol">
|
||||
]>
|
||||
|
|
@ -10,215 +10,366 @@
|
|||
<othername>"Hoaxter"</othername>
|
||||
<surname>Hoexter</surname>
|
||||
</author>
|
||||
<author>
|
||||
<firstname>Radim</firstname>
|
||||
<othername>"HSN"</othername>
|
||||
<surname>Kolar</surname>
|
||||
<affiliation>
|
||||
<address><email>hsn@sendmail.cz.nospam</email></address>
|
||||
</affiliation>
|
||||
</author>
|
||||
<copyright>
|
||||
<year>2003-2004</year>
|
||||
<holder>Authors</holder>
|
||||
</copyright>
|
||||
<!-- I'll call it 0.1 later
|
||||
<revhistory>
|
||||
<revision>
|
||||
<revnumber>0.1</revnumber>
|
||||
<date>2003.09.10</date>
|
||||
<revnumber>0.1</revnumber>
|
||||
<date>2003.09.10</date>
|
||||
</revision>
|
||||
</revhistory>
|
||||
-->
|
||||
<!-- starting with some general stuff -->
|
||||
<abstract>
|
||||
<para>
|
||||
This document is a major rewrite of the old
|
||||
<ulink url="http://fsp.sourceforge.net/doc/faq.html">FSP FAQ</ulink>.
|
||||
I started with this FAQ from scratch cause nearly all parts of the old FAQ where outdated. This new FAQ is maintained
|
||||
in DocBook SGML. Send patches to the fsp-devel Mailinglist (FIXME link to id gethelpml) or directly to me
|
||||
<email>sven@du-gehoerst-mir.de-nospam</email>. You should be able to find the latest SGML version of this FAQ in the
|
||||
<ulink url="http://sourceforge.net/cvs/?group_id=93841">fsp CVS at sf.net</ulink> or here
|
||||
<ulink url="http://sven.stormbind.net/fsp/fsp-doc/fsp-faq.sgml">http://sven.stormbind.net/fsp/fsp-doc/fsp-faq.sgml</ulink>
|
||||
(be aware the sf.net public CVS is often about a week behind the "real" CVS :( )
|
||||
This document is a major rewrite of the old
|
||||
<ulink url="http://fsp.sourceforge.net/doc/faq.html">FSP FAQ</ulink>.
|
||||
I started with this FAQ from scratch cause nearly all parts of the old FAQ where outdated. This new FAQ is maintained
|
||||
in DocBook SGML. Send patches to the fsp-devel Mailinglist (FIXME link to id gethelpml) or directly to me
|
||||
<email>sven@du-gehoerst-mir.de-nospam</email>. You should be able to find the latest SGML version of this FAQ in the
|
||||
<ulink url="http://sourceforge.net/cvs/?group_id=93841">fsp CVS at sf.net</ulink> or here
|
||||
<ulink url="http://sven.stormbind.net/fsp/fsp-doc/fsp-faq.sgml">http://sven.stormbind.net/fsp/fsp-doc/fsp-faq.sgml</ulink>
|
||||
(be aware the sf.net public CVS is often about a week behind the "real" CVS :( )
|
||||
</para>
|
||||
</abstract>
|
||||
</articleinfo>
|
||||
</articleinfo>
|
||||
<!-- end of the general stuff -->
|
||||
|
||||
<!-- starting with the main document -->
|
||||
<!-- starting with the main document -->
|
||||
|
||||
<!-- starting with the introduction -->
|
||||
<!-- starting with the introduction -->
|
||||
<sect1 id="introduction">
|
||||
<title>Introduction</title>
|
||||
|
||||
<sect2 id="whatisfsp">
|
||||
<title>What is FSP?</title>
|
||||
<para>
|
||||
FSP stands for &fsp;. In general FSP is what anonymous ftp should be, a fast and bandwith friendly
|
||||
way to access publicly avaible data. FSP is UDP based so it doesn't have all the protocol overhead you've with TCP
|
||||
based transfer protocols. You can find the latest protocol definition right here
|
||||
<ulink url="http://fsp.sourceforge.net/doc/PROTOCOL.txt">http://fsp.sourceforge.net/doc/PROTOCOL.txt</ulink>
|
||||
or in the source distribution in the "doc" subdirectory.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
In the past various people maintained the FSP code base. At the moment Radim Kolar <email>hsn@cybermail.net-nospam</email>
|
||||
is maintaining FSP. If you like to get involved take a look at the FSP
|
||||
<ulink url="http://fsp.sourceforge.net">Homepage</ulink> and the
|
||||
<ulink url="http://www.sourceforge.net/projects/fsp/">FSP project page</ulink>.
|
||||
FSP stands for &fsp;. In general FSP is what anonymous ftp should be: a reliable and bandwidth friendly
|
||||
way to access publicly available data.
|
||||
<para>
|
||||
FSP is a UDP based protocol for transferring files around. It has
|
||||
many benefits over FTP, mainly for running
|
||||
anonymous archives. FSP protocol is valuable in all kinds of
|
||||
environments because it is one of the only TCP/IP protocols that is not
|
||||
aggressive about bandwidth, while still being sufficiently fault tolerant.
|
||||
</para>
|
||||
</sect2>
|
||||
<sect2 id="fsp-project">
|
||||
<title>FSP Project</title>
|
||||
<para>
|
||||
FSP is (and always has been) open source project with MIT/X11 source
|
||||
code license. See <xref linkend="licence"> for more details.
|
||||
<para>
|
||||
In the past various people maintained the FSP code base.
|
||||
At the moment Radim Kolar
|
||||
is maintaining FSP. FSP project is now hosted on
|
||||
<ulink url="http://sourceforge.net">Source Forge.NET</ulink>.
|
||||
<para>
|
||||
If you like to get involved take a look at the FSP
|
||||
<ulink url="http://fsp.sourceforge.net">Homepage</ulink> and the
|
||||
<ulink url="http://www.sourceforge.net/projects/fsp/">FSP project page</ulink>.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="whatisitfor">
|
||||
<title>Why and for what should I use FSP?</title>
|
||||
<para>
|
||||
The &fsp; has its strengths on slow lines and connections with a high package lose like a Wireless LAN. In general the &fsp; is
|
||||
what anonymous FTP should be - a fast and bandwith friendly way for anonymous file access.
|
||||
The &fsp; has its strengths on slow lines and connections with a high packets lose like a Wireless LAN or radio packet networks. Because FSP is simple
|
||||
and lightweight, it is very well suited for use in embedded devices area.
|
||||
<para>
|
||||
FSP protocol is not aggressive about bandwidth and was designed
|
||||
to resist against users which want to do some bandwidth-related attacks.
|
||||
It can support more users, because the same available
|
||||
bandwidth is divided into smaller parts.
|
||||
Because FSP uses less bandwidth, FSP transfers takes about
|
||||
2-3 times longer than with TCP-based protocols.
|
||||
<para>
|
||||
FSP protocol
|
||||
chooses reliability and simplicity over raw transfer speed.
|
||||
File transfer takes longer, but there are much more resistant
|
||||
against network failure.
|
||||
<para>
|
||||
Entire connection management is moved from server to client side,
|
||||
which solves problems with aborted and timed out transfer. Because
|
||||
FSP is stateless protocol, it can survive even server reboot without
|
||||
interruption.
|
||||
</para>
|
||||
</sect2>
|
||||
<sect2 id="comparison">
|
||||
<title>Comparison between fsp and other protocols</title>
|
||||
<para>
|
||||
We did some benchmarking so that you can see how fsp performce
|
||||
compared to various other command protocols used to transfer
|
||||
files.
|
||||
</para>
|
||||
<sect3 id="comparehttp">
|
||||
<title>FSP vs. http</title>
|
||||
<para>FIXME</para>
|
||||
</sect3>
|
||||
<sect3 id="compareftp">
|
||||
<title>FSP vs. ftp</title>
|
||||
<para>FIXME</para>
|
||||
</sect3>
|
||||
<sect3 id="comparetftp">
|
||||
<title>FSP vs. tftp</title>
|
||||
<para>FIXME</para>
|
||||
</sect3>
|
||||
<title>Comparison between fsp and other protocols</title>
|
||||
<para>
|
||||
We did some benchmarking so that you can see how fsp performance
|
||||
compared to various other command protocols used to transfer
|
||||
files.
|
||||
<sect2 id="benchresults">
|
||||
<title>Benchmark results</title>
|
||||
<para>
|
||||
You should understand that FSP is slower than TCP
|
||||
based protocols by design. TCP protocol can have more than
|
||||
one packet flying in network (usually 2-3) while FSP was designed to
|
||||
make it impossible (See <xref linkend="keying">).
|
||||
<para>
|
||||
All TCP protocols have on normal networks
|
||||
(max 15% packet loss) higher transfer rate than FSP.
|
||||
FSP is clean winner when it comes to overloaded sites or lines.
|
||||
These benchmarks were performed on 10Mbit LAN with zero traffic.
|
||||
Transfer rate is quite slow even for 10Mb because one of testing
|
||||
machines was old AMD K5/90 and both machines used cheap clone ISA NE2000 Ethernet cards.
|
||||
<para>Test file was 3656535 bytes long (FreeBSD kernel image).
|
||||
Test results shows, that FSP is about 2-2.5 times slower than TCP.
|
||||
<programlisting>
|
||||
tftp 15.2 secs 240.6 kB/s
|
||||
ftp 5.18 secs 688.7 kB/s
|
||||
http 5.32 secs 685.4 KB/s
|
||||
sftp 8.0 secs 446.4 KB/s
|
||||
fsp 12.7 secs 287.7 kB/s
|
||||
</programlisting>
|
||||
</para>
|
||||
<sect3 id="comparehttp">
|
||||
<title>FSP vs. http</title>
|
||||
<para>
|
||||
HTTP: widely supported by servers, clients and proxies.
|
||||
De-facto standard protocol for accessing information today.
|
||||
<para>
|
||||
FSP: Can provide directory listings, which are not supported
|
||||
by standard HTTP/1.1 protocol. You need to have configured
|
||||
WebDAV server-side extension for that.
|
||||
</para>
|
||||
</sect3>
|
||||
<sect3 id="compareftp">
|
||||
<title>FSP vs. ftp</title>
|
||||
<para>
|
||||
FTP: widely supported by servers and clients, more difficult
|
||||
to proxy than HTTP, uses 2 TCP connections, can provide directory
|
||||
listings in site-specific format, more heavy service than HTTP.
|
||||
<para>
|
||||
FSP: do not needs to make any connection, very lightweight service,
|
||||
directory listings are standardized by protocol.
|
||||
</sect3>
|
||||
<sect3 id="comparetftp">
|
||||
<title>FSP vs. tftp</title>
|
||||
<para>
|
||||
tftp is UDP (but TCP version also exists) used mainly
|
||||
for loading boot and flash ROM images from network.
|
||||
<para>
|
||||
TFTP: more widely used, standardized, most network cards
|
||||
can boot image via TFTP.
|
||||
<para>
|
||||
FSP: about 1.5-times faster because of bigger packet size,
|
||||
supports directory listings,
|
||||
can query file date and size,
|
||||
can provide random access to file and supports opening
|
||||
more than one file, supports access control, timeout
|
||||
management moved to client side, stateless.
|
||||
</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="whyfspd">
|
||||
<title>Why should I run fspd?</title>
|
||||
<para>
|
||||
If you are providing anonymous archive (FTP,WWW), you should also
|
||||
offer FSP access. FSP daemon is a very lightweight process, never
|
||||
forks and you will never have more than one copy running around.
|
||||
On todays machines, it has zero performance impact.
|
||||
<para>
|
||||
Running fspd allows people with overloaded or lousy lines to get
|
||||
files from your archive. It also helps people during spikes periods
|
||||
when archive is very busy.
|
||||
<para>
|
||||
There are also some people which likes slower FSP downloads, because
|
||||
it saves their bandwidth for interactive tasks.
|
||||
<para>
|
||||
It is not true that UDP based protocols are unsecure. &fsp; provides
|
||||
the same security level as anonymous FTP and is much more resistant
|
||||
against denial of service attack. It is nearly impossible to overload
|
||||
fsp server by flooding. On other side, TCP-based protocols are very
|
||||
simple to SYN flood.
|
||||
<sect2 id="wherecanifind">
|
||||
<title>Where can I download FSP?</title>
|
||||
<para>
|
||||
You can Download the FSP source Distribtuion from the
|
||||
<ulink url="http://sourceforge.net/project/showfiles.php?group_id=93841">sf.net mirror network</ulink>
|
||||
or from
|
||||
<ulink url="http://ibiblio.org/pub/linux/system/network/file-transfer/">ibblio</ulink>.
|
||||
If you have the FSP tools already you can access the latest FSP release
|
||||
via fsp on hxt.homelinux.org or wrack.telelev.net both running fspd on
|
||||
port 2221.
|
||||
You can Download the FSP source Distribution from the
|
||||
<ulink url="http://sourceforge.net/project/showfiles.php?group_id=93841">sf.net mirror network</ulink>
|
||||
or from
|
||||
<ulink url="http://ibiblio.org/pub/linux/system/network/file-transfer/">ibblio</ulink>.
|
||||
If you have the FSP tools already you can access the latest FSP release
|
||||
via fsp on hxt.homelinux.org or wrack.telelev.net both running fspd on
|
||||
port 2221.
|
||||
</para>
|
||||
<para>
|
||||
When you're interesseted in the latest, and of course greates,
|
||||
development done in FSP please try a CVS checkout.
|
||||
Explanation and all needed information to do this can be found
|
||||
on the
|
||||
<ulink url="http://sourceforge.net/cvs/?group_id=93841">sf.net CVS page</ulink>.
|
||||
When you're interested in the latest, and of course greatest,
|
||||
development done in FSP please try a CVS checkout.
|
||||
Explanation and all needed information to do this can be found
|
||||
on the
|
||||
<ulink url="http://sourceforge.net/cvs/?group_id=93841">sf.net CVS page</ulink>.
|
||||
</sect2>
|
||||
|
||||
<sect2 id="gethelp">
|
||||
<title>Where can I find help?</title>
|
||||
<para>
|
||||
First of all various people took the time to write nice documentation on FSP including the fspd Server
|
||||
and the client tools. Please read those fine documents bevor you start writing to the mailinglists.
|
||||
First of all various people took the time to write nice documentation on FSP including the fspd Server
|
||||
and the client tools. Please read those fine documents before you start writing to the mailinglists.
|
||||
</para>
|
||||
<sect3 id="gethelpdocs">
|
||||
<title>RTFM - Read the fine Manuals</title>
|
||||
<para>
|
||||
<ulink url="http://fsp.sourceforge.net/doc/PROTOCOL.txt">The &fsp; definition</ulink>
|
||||
The latest version of the FAQ
|
||||
The old FAQ
|
||||
</para>
|
||||
<title>RTFM - Read the fine Manuals</title>
|
||||
<para>
|
||||
<ulink url="http://fsp.sourceforge.net/doc/PROTOCOL.txt">The &fsp; definition</ulink>
|
||||
The latest version of the FAQ,
|
||||
The <ulink url="http://fsp.sourceforge.net/doc/faq.html">old FSP FAQ</ulink>.
|
||||
</para>
|
||||
</sect3>
|
||||
<sect3 id="gethelpml">
|
||||
<title>The Mailinglists</title>
|
||||
<para>
|
||||
For developing issue writte to the fsp-dev mainlinglist. For end-user questions
|
||||
and questions on how to configure your server/client write to the fsp-user Mailinglist.
|
||||
You can find more information on how to subscribe/unsubscribe to the mailinglist and
|
||||
the archiv on the
|
||||
<ulink url="http://sourceforge.net/mail/?group_id=93841">FSP mailinglist page</ulink>
|
||||
on sf.net.
|
||||
Please bevor you write to one of the provided mailinglists read and understand
|
||||
<ulink url="http://www.catb.org/~esr/faqs/smart-questions.html">ESRs HowTo ask smart questions</ulink>
|
||||
and
|
||||
<ulink url="http://www.netmeister.org/news/learn2quote.html">learn.to/quote</ulink>
|
||||
</para>
|
||||
<title>The Mailinglists</title>
|
||||
<para>
|
||||
For developing issue writte to the fsp-dev mainlinglist. For end-user questions
|
||||
and questions on how to configure your server/client write to the fsp-user Mailinglist.
|
||||
You can find more information on how to subscribe/unsubscribe to the mailinglist and
|
||||
the archive on the
|
||||
<ulink url="http://sourceforge.net/mail/?group_id=93841">FSP mailinglist page</ulink>
|
||||
on sf.net.
|
||||
Please before you write to one of the provided mailinglists read and understand
|
||||
<ulink url="http://www.catb.org/~esr/faqs/smart-questions.html">ESRs HowTo ask smart questions</ulink>
|
||||
and
|
||||
<ulink url="http://www.netmeister.org/news/learn2quote.html">learn.to/quote</ulink>
|
||||
</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="licence">
|
||||
<title>Licence, copyright and redistribution of FSP</title>
|
||||
<para>
|
||||
Most parts of the &fsp; distribution are free and licenced under a
|
||||
BSD/MIT/X licence.
|
||||
FSP code base uses MIT/X11 license (also known as 2-point BSD
|
||||
license). This license is very friendly to users in commercional area.
|
||||
You can freely develop, use and sell your commercional implementation of &fsp;.
|
||||
<orderedlist>
|
||||
<listitem>
|
||||
<para>Do not claim that you have wrote this software.
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Do not sue us if something breaks.
|
||||
</listitem>
|
||||
</orderedlist>
|
||||
Summary: As long as you will not remove our copyrights from source code
|
||||
and will not go with your complains to the court, you can
|
||||
do with this software anything you want.
|
||||
</para>
|
||||
<para>
|
||||
From the COPYRIGHT file in the source distribution (e-mail addresses removed):
|
||||
<programlisting>
|
||||
Authors:
|
||||
Radim Kolar (Current FSP maintainer)
|
||||
Andrew Doherty
|
||||
Michael Fischbein
|
||||
Cimarron D. Taylor
|
||||
Guido van Rossum
|
||||
Wen-King Su
|
||||
Philip G. Richards
|
||||
Michael Meskes
|
||||
Rich $alz
|
||||
gjc@mitech.com
|
||||
Joseph_Traub
|
||||
Sven (VMS port maintainer)
|
||||
Very Mad Students, University of Karlsruhe, FRG (VMS port)
|
||||
|
||||
Copyright:
|
||||
All of the FSP code is free software. Most of fsp falls under two
|
||||
copyrights, the 2-point BSD copyright and one by Wen-King Su:
|
||||
|
||||
Copyright (c) 1991 by Wen-King Su (wen-king@vlsi.cs.caltech.edu)
|
||||
You may copy or modify this file in any manner you wish, provided
|
||||
that this notice is always included, and that you hold the author
|
||||
harmless for any loss or damage resulting from the installation or
|
||||
use of this software.
|
||||
|
||||
Other contributions to fsp fall under different copyrights:
|
||||
|
||||
This file is Copyright 1992 by Philip G. Richards. All Rights Reserved.
|
||||
See the file README that came with this distribution for permissions on
|
||||
code usage, copying, and distribution. It comes with absolutely no warranty.
|
||||
|
||||
Copyright (c) 1993 by Michael Meskes
|
||||
You may copy or modify this file in any manner you wish, provided
|
||||
that this notice is always included, and that you hold the author
|
||||
harmless for any loss or damage resulting from the installation or
|
||||
use of this software.
|
||||
</programlisting>
|
||||
From the COPYRIGHT file in the source distribution (e-mail addresses removed):
|
||||
<programlisting>
|
||||
Authors:
|
||||
Radim Kolar (Current FSP maintainer)
|
||||
Andrew Doherty
|
||||
Michael Fischbein
|
||||
Cimarron D. Taylor
|
||||
Guido van Rossum
|
||||
Wen-King Su
|
||||
Philip G. Richards
|
||||
Michael Meskes
|
||||
Rich $alz
|
||||
gjc@mitech.com
|
||||
Joseph_Traub
|
||||
Sven (VMS port maintainer)
|
||||
Very Mad Students, University of Karlsruhe, FRG (VMS port)
|
||||
|
||||
Copyright:
|
||||
All of the FSP code is free software. Most of fsp falls under two
|
||||
copyrights, the 2-point BSD copyright and one by Wen-King Su:
|
||||
|
||||
Copyright (c) 1991 by Wen-King Su (wen-king@vlsi.cs.caltech.edu)
|
||||
You may copy or modify this file in any manner you wish, provided
|
||||
that this notice is always included, and that you hold the author
|
||||
harmless for any loss or damage resulting from the installation or
|
||||
use of this software.
|
||||
|
||||
Other contributions to fsp fall under different copyrights:
|
||||
|
||||
This file is Copyright 1992 by Philip G. Richards. All Rights Reserved.
|
||||
See the file README that came with this distribution for permissions on
|
||||
code usage, copying, and distribution. It comes with absolutely no warranty.
|
||||
|
||||
Copyright (c) 1993 by Michael Meskes
|
||||
You may copy or modify this file in any manner you wish, provided
|
||||
that this notice is always included, and that you hold the author
|
||||
harmless for any loss or damage resulting from the installation or
|
||||
use of this software.
|
||||
</programlisting>
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="projecthistory">
|
||||
<title>Project history</title>
|
||||
<para>
|
||||
This should give you a short overview over the development of the &fsp;
|
||||
in the past and today.
|
||||
This should give you a short overview over the development of the &fsp;
|
||||
in the past and today.
|
||||
</para>
|
||||
<sect3 id="histpast">
|
||||
<title>The past</title>
|
||||
<para>
|
||||
In the past various people worked on the &fsp;, see
|
||||
<xref linkend="licence">
|
||||
</para>
|
||||
<title>The past</title>
|
||||
<para>
|
||||
FSP development started in a very old days. From source code and man
|
||||
page time stamps we can see that it was working and alive in 1988.
|
||||
FSP versions 1.0 and 2.0 was born in Dec 1991. After that two first
|
||||
releases FSP goes to the active life.
|
||||
|
||||
<para>
|
||||
FSP active development era ends in May 1993 when last official
|
||||
version 2.7.1 was released. It was quite popular at that time,
|
||||
mainly because it was superior way for transferring warez around
|
||||
when compared with FTP. Because of this, FSP protocol got a bad
|
||||
name and suffers from it even today. I see that FSP warez era
|
||||
as practical demonstration how can FSP perform nicely on
|
||||
overloaded sites and lines.
|
||||
|
||||
<para>
|
||||
After that then was some work on
|
||||
FSP in 1995 and which ends with now famous FSP version 2.8.1b3
|
||||
in March 1996. This version is used on some
|
||||
servers today because Debian Woody has it, but 2.7.1 is still
|
||||
used on some forgotten machines in universities. It has also
|
||||
known security issues (fspd follows symlinks), but at this
|
||||
time there were viewed as feature, not a bug.
|
||||
|
||||
<para>
|
||||
Radim Kolar released 2.8.1b4 in 2001, which was just some bugfixed
|
||||
version of 2.8.1b3 untouched from 1997 when I ported it to OS/2.
|
||||
Active working on FSP again starts on 25 June 2003 when Version
|
||||
2.8.1b5 goes out. Major parts of FSP server code was rewrited
|
||||
for higher performance and many old bugs in FSP code fixed.
|
||||
|
||||
<para>
|
||||
In the past various people worked on the &fsp;, see
|
||||
<xref linkend="licence">
|
||||
</para>
|
||||
</sect3>
|
||||
<sect3 id="histtoday">
|
||||
<title>Today</title>
|
||||
<para>
|
||||
Radim Kolar started to work on the &fsp; again in June 2003. Since
|
||||
that time he's maintaining the source distribution. You can reach him
|
||||
on the mailinglists or via e-mail <email>hsn@cybermail.net-nospam</email>.
|
||||
</para>
|
||||
<para>
|
||||
Since September 2003 Sven Hoexter is working on parts of the documentation.
|
||||
You can reach him on the mailinglists or via e-mail
|
||||
<email>sven@du-gehoerst-mir.de-nospam</email>.
|
||||
<title>Today</title>
|
||||
<para>
|
||||
Radim Kolar started to work on the &fsp; again in June 2003. Since
|
||||
that time he's maintaining the source distribution. You can reach him
|
||||
on the mailinglists or via e-mail <email>hsn@sendmail.cz-nospam</email>.
|
||||
</para>
|
||||
<para>
|
||||
Since September 2003 Sven Hoexter is working on parts of the documentation.
|
||||
You can reach him on the mailinglists or via e-mail
|
||||
<email>sven@du-gehoerst-mir.de-nospam</email>.
|
||||
</sect2>
|
||||
|
||||
<sect2 id="credits">
|
||||
<title>Developers and contributors</title>
|
||||
<para>
|
||||
See <xref linkend="licence">
|
||||
See <xref linkend="licence">
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
</sect1>
|
||||
<!-- end of the introduction -->
|
||||
|
||||
<!-- start with the installation instructions-->
|
||||
|
|
@ -227,33 +378,33 @@
|
|||
<sect2 id="getfsp">
|
||||
<title>How to get FSP</title>
|
||||
<sect3 id="getsource">
|
||||
<title>How to obtain the source distribution</title>
|
||||
<para>
|
||||
There are several ways to obtain the fsp source distribution please take a
|
||||
look at <xref linkend="wherecanifind">
|
||||
</para>
|
||||
<title>How to obtain the source distribution</title>
|
||||
<para>
|
||||
There are several ways to obtain the fsp source distribution please take a
|
||||
look at <xref linkend="wherecanifind">
|
||||
</para>
|
||||
</sect3>
|
||||
<sect3 id="getbinary">
|
||||
<title>How to obtain a binary copy</title>
|
||||
<para>
|
||||
At the moment we provide only rpms for RedHat 7.3. You can download the rpm file from
|
||||
the sf.net download page or from wrack.telelev.net. wrack.telelev.net provides the
|
||||
rpms in a apt-rpm useable way, for more information about apt-rpm and the packages on
|
||||
wrack.telelev.net take a look at http://sven.stormbind.net/aptrpm/
|
||||
If you're running other rpm based distributions you can try to rebuild the source rpms.
|
||||
</para>
|
||||
<title>How to obtain a binary copy</title>
|
||||
<para>
|
||||
At the moment we provide only RPM for RedHat 7.3. You can download the RPM file from
|
||||
the sf.net download page or from wrack.telelev.net. wrack.telelev.net provides the
|
||||
rpms in a apt-rpm usable way, for more information about apt-rpm and the packages on
|
||||
wrack.telelev.net take a look at http://sven.stormbind.net/aptrpm/
|
||||
If you're running other rpm based distributions you can try to rebuild the source rpms.
|
||||
</para>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="compilesource">
|
||||
<title>How to compile the source code</title>
|
||||
<para>
|
||||
After download you should be able to unpack the source tarball, change
|
||||
into the source directory and use
|
||||
./configure
|
||||
make
|
||||
su
|
||||
make install
|
||||
After download you should be able to unpack the source tarball, change
|
||||
into the source directory and use
|
||||
./configure
|
||||
make
|
||||
su
|
||||
make install
|
||||
</para>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
|
@ -276,21 +427,21 @@
|
|||
<sect2 id="fspd.conf">
|
||||
<title>How to setup a basic fspd.conf</title>
|
||||
<para>
|
||||
FIXME
|
||||
FIXME
|
||||
</para>
|
||||
</sect2>
|
||||
<sect2 id="initscript">
|
||||
<title>How can I start the fspd automagicly on reboot?</title>
|
||||
<title>How can I start the fspd automagicly on reboot?</title>
|
||||
<para>
|
||||
FIXME
|
||||
Use init scripts ;)
|
||||
FIXME
|
||||
Use init scripts ;)
|
||||
</para>
|
||||
</sect2>
|
||||
<sect2 id="restrictions">
|
||||
<title>How to setup restrictions on directorys?</title>
|
||||
<para>
|
||||
FIXME
|
||||
</para>
|
||||
<title>How to setup restrictions on directories?</title>
|
||||
<para>
|
||||
FIXME
|
||||
</para>
|
||||
</sect2>
|
||||
</sect1>
|
||||
<!-- end how to use the server -->
|
||||
|
|
@ -306,19 +457,91 @@
|
|||
<sect2 id="fsptoolchain">
|
||||
<title>The fsp tool collection</title>
|
||||
<para>
|
||||
FIXME
|
||||
Information about all the f* commands
|
||||
FIXME
|
||||
Information about all the f* commands
|
||||
</para>
|
||||
</sect2>
|
||||
<sect2 id="fspclient">
|
||||
<title>fspclient</title>
|
||||
<para>
|
||||
FIXME
|
||||
Enter information about fspclient here
|
||||
FSP Client is FTP-like interface for FSP.
|
||||
It look exactly like classic FTP does, but uses different transfer
|
||||
protocol. People usually find this program easier to use that
|
||||
multiple client programs in FSP protocol suite. If you are at least
|
||||
somewhat familiar with command line FTP and want to try FSP, this
|
||||
program is right for you.
|
||||
<para>
|
||||
FSP client homepage is <ulink url="http://fspclient.sourceforge.net">http://fspclient.sourceforge.net</ulink>.
|
||||
</para>
|
||||
</sect2>
|
||||
<sect2 id="gui">
|
||||
<title>Using FSP in browser</title>
|
||||
<para>
|
||||
If you want a GUI, the easiest way is to use FSP directly
|
||||
from your web browser.
|
||||
You need to download and install <ulink url="http://fsp.sf.net/javalib.html">FSP Java LIB</ulink> and <ulink url="http://fsp.sf.net/fsproxy.html">Proxy server</ulink>. Read included docs for install instructions.
|
||||
</sect1>
|
||||
<!-- end how to use the client -->
|
||||
|
||||
|
||||
</article>
|
||||
<sect1 id="techinfo">
|
||||
<title>FSP technology in-depth</title>
|
||||
<sect2 id="protocol">
|
||||
<title>Protocol definition document</title>
|
||||
<para>
|
||||
FSP protocol is well documented.
|
||||
You can find the latest protocol definition right here
|
||||
<ulink url="http://fsp.sourceforge.net/doc/PROTOCOL.txt">http://fsp.sourceforge.net/doc/PROTOCOL.txt</ulink>
|
||||
or in the source distribution in the "doc" subdirectory.
|
||||
</para>
|
||||
<sect2 id="transport">
|
||||
<title>Transport mechanism used by FSP</title>
|
||||
<para>
|
||||
FSP is datagram-based protocol. FSP protocol itself do not require
|
||||
reliable underlying transport. FSP can operate even without
|
||||
any Layer 2 and Layer 3 transports only with some extra features
|
||||
disabled. FSP can be implemented in all kinds of environments.
|
||||
This makes FSP very suitable for embedded devices area.
|
||||
<para>
|
||||
When used in TCP/IP based networks,
|
||||
UDP is used for transporting of FSP datagrams, this lowers protocol
|
||||
overhead by skipping TCP level, which is not needed, because FSP
|
||||
handles connection management by itself. This method is standardized
|
||||
in <xref linkend="protocol">.
|
||||
</para>
|
||||
<para>
|
||||
FSP frames can be packed directly info Ethernet 802.2, USB or GSM
|
||||
frames. Biggest advantage of using FSP in that areas is simplicity.
|
||||
FSP protocol is very simple to implement.
|
||||
</sect2>
|
||||
<sect2 id="keying">
|
||||
<title>Network bandwidth protection</title>
|
||||
<para>
|
||||
One of interesting parts of underlying network technology used
|
||||
by FSP is how protocol design restrict user from sending
|
||||
more than one packet into network.
|
||||
<para>
|
||||
FSP uses very simple method: Every packet sent from server to client
|
||||
contains a 16-bit long, pseudo random key. Client needs this key
|
||||
for sending next request to server. Server will ignore requests
|
||||
with wrong key, unless there was no previous activity recorded
|
||||
for client IP address in last 60 seconds.
|
||||
<para>
|
||||
Server remembers for each IP not only nextkey, but also previous
|
||||
key. When packet's key matches previously stored key -- it is
|
||||
resend from client.
|
||||
This method also allows ignore duplicate requests by server for
|
||||
action which should not be done more than once (for example mkdir).
|
||||
<para>
|
||||
In each packet sent by client to server is sequence number.
|
||||
Server will echo this number back to the client, when packet is
|
||||
processed. There is no restriction on that number, client can
|
||||
use anything he wants.
|
||||
Primary purpose
|
||||
of this sequence number is possibility to put unique mark on
|
||||
every network packet. Client can use this information and
|
||||
fine-tune its retry algorithm
|
||||
by computing packet loss ratio of network, and duplicate
|
||||
packet rate.
|
||||
</sect1>
|
||||
</article>
|
||||
<!-- vim: set expandtab: -->
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user