summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc685.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/rfc/rfc685.txt')
-rw-r--r--doc/rfc/rfc685.txt170
1 files changed, 170 insertions, 0 deletions
diff --git a/doc/rfc/rfc685.txt b/doc/rfc/rfc685.txt
new file mode 100644
index 0000000..c11e727
--- /dev/null
+++ b/doc/rfc/rfc685.txt
@@ -0,0 +1,170 @@
+Network Working Group Michael Beeler (BBN-TENEX)
+Request for Comments: 685 April 16, 1975
+NIC #32298
+
+
+ Response Time in Cross-network Debugging
+
+
+
+Cross-network debugging is a means whereby a programmer at one
+computer on a network can debug a program which executes on another
+computer. One form of cross-net debugging has been in use for some
+years by programmers who maintain IMPs on the ARPA network. Another
+form has been used by ARPA network users who employ TELNET or RSEXEC
+to log into a distant computer and remotely run a debugger on that
+machine. In both of these cases, the debugger is almost entirely
+resident in the same machine as the subject program, and only a
+remote means of access to that computer distinguishes the activity
+from single-computer debugging.
+
+In our case, we use a PDP-10 to perform complex debugging
+manipulations. Simple manipulations, and complex actions which the
+PDP-10 has partially digested into simple actions, are sent over the
+ARPA network to a PDP-11. The portion of the debugger resident in
+the PDP-11, where the subject program executes, can perform only
+simple actions (examine, deposit, start, stop, set breakpoint,
+etc.). This division of debugging computation between the two
+machines is implemented and in use at BBN. A user s manual is
+available (as (BBN]<DOCUMENTATION>XNET.DOC) describing the
+debugger s features and discussing some of the issues involved.
+
+The purpose of this RFC is to describe our experience with
+response times the debugger exhibits. Response time is a serious
+problem in any elaboration to a debugger. Here we wish to discuss
+the contribution of communicating over the ARPA network to response
+time. The debugger (X-NET) keeps statistics during each debugging
+session, and a debugger command prints them out. We used a
+"standard scenario" to measure response times on two occasions. The
+first was debugging a PDP-11 at BBN on the same IMP as the PDP-10.
+The second was with a PDP-11 at SRI-ARC in California, with at least
+nine IMPs intervening.
+
+BBN (local) SRI (distant)
+TENEX LOAD AVG
+START 6.0 4.65
+FINISH 3.9 6.6
+TIME OF DAY 15:30 EST 11:00 EST
+DAY 4/10/75
+4/11/75
+
+ Page 2
+
+
+Each session lasted about 10 minutes. The terms used below
+are:
+
+message -- a single message generated by the PDP-10 portion of X-NET
+
+active command -- a command which involves, actually or virtually,
+an interaction with the subject program (e.g., examine, deposit,
+start, stop, set breakpoint, etc.)
+
+bytes -- the total of all (8-bit) bytes, both sent and received,
+plus any bytes due to receipt of asynchronous replies (e.g.,
+breakpoint hit), during processing of the associated message or
+active command.
+
+wait -- total elapsed time from handing message to implementation
+language (BCPL) network routines, to receipt of the reply from
+these routines and through an inferior process in X-NET
+
+The 35 active commands in the scenario are:
+
+1 load program
+8 start or proceed program
+3 halt program
+16 examine contents of memory word
+1 deposit new contents in memory word
+1 set breakpoint
+1 remove breakpoint
+1 word search
+1 copy program onto disk file
+2 network/process management (see user's manual)
+
+The summary statistics are:.
+
+BBN (local) SRI (distant)
+AVG STD DEV AVG STD DEV
+PER MESSAGE:
+BYTES 154 295 164 295
+WAIT 1.75 2.04 1.89 0.78 SEC
+PER ACTIVE COMMAND:
+MSGS 0.91 0.69 0.91 0.69
+BYTES 150 331 150 331
+WAIT 1.60 2.36 1.73 1.35 SEC
+
+The standard deviation is relatively large partly because of a
+small number of samples, but even more because the message size and
+the command complexity are bimodal, as shown by the histograms
+below. The load and word search commands transferred many bytes, as
+did an examine (the first one while the program was halted;
+subsequent examines were answerable from the cache; see user s
+manual). Other commands needed little or no network transaction.
+Those which needed none at all produced a no-delay mode in the
+distribution of waiting time per active command.
+
+ Page 3
+
+
+We conclude that the delay due to network communication is
+tolerable. It is of the same order of magnitude as that often
+experienced on moderately loaded time sharing systems. More
+explicit measurements of delays seen by user programs in general are
+in progress at BBN and elsewhere; it is beyond the scope of this RFC
+to discuss these delays in detail, or to break down their causes
+into process activation, queueing, IMP performance, etc. Instead,
+we merely note that cross-network debugging is possible in a
+practical sense.
+
+ PER MESSAGE PER ACTIVE COMMAND
+0 . XXXXXXXXX
+16 . .
+32 XXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX
+64 . XXX
+128 . .
+256 XX .
+512 XXXX XX
+1024 . XX
+
+SIZE (BYTES), BBN (local data) = SRI (distant data) Left column
+gives lower bound (inclusive) on logarithmic scale. Thus, two
+messages had at least 256 bytes but less than 512 bytes. An
+examination of network traffic per active command shows that it is
+actually trimodal: some commands are answered from the cache,
+incurring no network traffic; some, such as start or stop, require
+only a few tens of bytes; and some commands, such as word search and
+load, cause transfer of thousands of bytes.
+
+
+
+ PER MESSAGE PER ACTIVE COMMAND
+0 . XXXXXXXXX
+1/16 X .
+1/8 . .
+1/4 X .
+1/2 XXXXXXXXXX XXXXXXXX
+1 XXXXXXXXXXXXXX XXXXXXXXXXX
+2 XXXX XXXX
+4 X X
+8 X XX
+
+WAITING TIME (SEC), BBN (local data)
+
+ Page 4
+
+
+
+
+ PER MESSAGE PER ACTIVE COMMAND
+0 . XXXXXXXXX
+1/16 . .
+1/8 . .
+1/4 X .
+1/2 XXXXXX XXX
+1 XXXXXXXXXXXX XXXXXXXXX
+2 XXXXXXXXXXXXX XXXXXXXXXXXX
+4 . XX
+8 . .
+
+WAITING TIME (SEC), SRI (distant data)