File: README

package info (click to toggle)
rocks 2.1-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 284 kB
  • ctags: 412
  • sloc: ansic: 5,218; makefile: 111
file content (94 lines) | stat: -rw-r--r-- 3,479 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
Rocks:  Reliable Sockets, Version 2.1 (December 10 2001)
Copyright (c) 2001 Victor C. Zandy  zandy@cs.wisc.edu

COPYING contains the distribution terms for rocks (LGPL).

If you are using the source release, please read INSTALL for
instructions on building and installing the rocks binaries.

If you are using the binary release:
  Install rock and rockd somewhere in your default path;
  Install librocks.so in $HOME/lib or somewhere in your LD_LIBRARY_PATH.

If you have questions about using rocks or if you encounter bugs, send
email to zandy@cs.wisc.edu.


RELEASE OVERVIEW

We support rocks on x86 Linux 2.4 and Linux 2.2.

The major new features of version 2.0 are:
 - fork and exec support
 - asynchronous reconnection

Version 2.1 is bug fix release.

ROCKS OVERVIEW

Rocks protect sockets-based applications from network failures,
particularly failures common to mobile computing, including:

 - Link failures (e.g., unexpected modem hangup);
 - IP address changes (e.g., laptop movement, DHCP lease expiry);
 - Extended periods of disconnection (e.g., laptop suspension).

Rock-enabled programs continue to run after any of these events; their
broken connections are restored automatically, without loss of
in-flight data, when connectivity returns.  Rocks can be used with
ordinary sockets-based programs, without re-compiling or re-linking,
including ssh, X windows applications, and network service daemons.
Connections cannot be restored if both ends of the connection change
IP address while disconnected; we are developing another system that
will address this limitation. 

Rocks work entirely at user level: they can be installed and used by
ordinary users and do not require any kernel modifications.

Rocks are transparent to applications.  You can use rocks with
existing programs without re-programming, re-compiling, or re-linking.

Rocks must be present at both ends of the connection.  Rocks detect
peers that are not rock enabled and silently revert to ordinary
sockets.  Rock detection is harmless to the peer.  (But it is not
available on Linux 2.2.)

Rocks are easy to use.  We provide a command-line tool (rock) for
running ordinary programs with rocks.  We also provide a rock daemon
(rockd) to create indirect rock connections with servers that do not
support rocks, such as those owned by root and setuid programs.  These
programs are described in the accompanying manual page rock(1).

Our report describes rocks in detail: "Reliable Sockets", available at
http://www.cs.wisc.edu/~zandy/rocks.


FUTURE RELEASES

These features are being developed and will appear in future releases:

* Support for UDP.
* Support for TCP sundries including urgent data and some missing
  socket options.
* Support for other operating systems.
* The rocks expanded sockets API (RE-API) for rocks-aware application
  programming.  The API will enable rocks-aware applications to
  reconnect when both ends move simultaneously, among other things.


CONTACT

Victor Zandy is the author and maintainer of rocks.
Please send bug reports to zandy@cs.wisc.edu.

The rocks webpage is http://www.cs.wisc.edu/~zandy/rocks.

The rocks mailing list is rocks@cs.wisc.edu.  To subscribe, send a
message to rocks-request@cs.wisc.edu with the following in the body
of your message:

    subscribe your-email-address

Rocks are one component of the roaming applications system that is
being developed by Victor Zandy and Barton Miller at the University of
Wisconsin - Madison.