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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
|
Network Working Group L. Pfeifer
Request for Comments: 508 J. McAfee
NIC: 16159 Computer Systems Laboratory / UCSB
7 May 1973
REAL-TIME DATA TRANSMISSION ON THE ARPANET
I. INTRODUCTION
The ARPA Network is rapidly proving to be a useful tool in computer
communications and resource sharing. It has been proposed that the
same network might also be able to support real-time processes such
as audio or video communications for conferencing purposes. The
degree of support of these types of processes will largely be
determined by transmission bit-rates and delays.
The IMP subnetwork throughput rates (one way) average about 37
kilobits[1], therefore an external process must operate at a bit-rate
below that level. This would imply some form of data compression for
both audio and video transmission. Research in these areas is still
in progress so these processes must be simulated at the present time.
In addition to bit-rate, system response time (system delay) is an
important factor since this has direct influence on the amount of
data which must be buffered in order to keep a real-time process
running without discontinuities or gaps. Such delays may be caused
by network loading, host loading, or an excessive number of IMP-to-
IMP hops in the transmission path.
In order to get a feel for the ability of the network to support a
real-time process an experiment was conducted with real-time data
being sent from the UCSB SEL810-B computer, by way of the UCSB IBM
360 host, onto the ARPA Network and into a host discard socket in the
UCLA IBM 360 computer. This particular data path very nearly
duplicates the path which might be taken if real-time devices were
attached to large scale host computers operating in their normal mode
(usually timesharing). The experiment consisted of measuring the
duration of gaps incurred at various process bit-rates, and buffer
sizes ranging from one to eight network packets.
Earlier experiments at MIT[2] simulated vocoded speech transmission
over the ARPA Network using the TX-2 computer and "Fake host 3" in a
destination IMP. Speech was sampled by the TX-2 and simulated speech
data blocks were sent to a particular fake host. Receipt of an
acknowledgment by TX-2 indicated that the corresponding blocks of
speech data could be reconstituted. Experiments were conducted with
bit-rates from 2400-17000 bps and varying block sizes (depending on
Pfeifer & MacAfee [Page 1]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
the number of hops), and conclusions were reached that with delay
characteristics similar to a lightly loaded ARPA Network speech
communications could be satisfactory from a human-factors standpoint.
II. CONFIGURATION
Data for this experiment originated in an SEL 810-B computer located
in the Electrical Engineering Department at UCSB. This 70ns cycle
time computer is the heart of an interactive signal processing system
developed by Retz[3]. It has associated hardware such as a card
reader, two IBM 1311 disk drives, a drum storage unit, A/D and D/A
converters, Teletype, Tektronix 611 storage display unit, OLS
keyboard, and a connection to an IBM 1800 computer. This system is
linked to the UCSB IBM 360/75 via a 500 kilobit line for high speed
data transfers. Software in both the SEL 810-B and the IBM 360
enables the SEL to communicate with the ARPA Network.
The hardware configuration of the data path between the SEL 810-B and
UCLA is shown in Figure 1. For simulating speech transmission, the
SEL is thought of as a "speech processor", analyzing and encoding the
one-way conversation of a person at UCSB talking to someone at UCLA.
The fact that there was no "speech processor" at UCLA probably had
little or no effect on the measurements that were made. This is
substantiated by noting that the SEL was a dedicated processor that
did not introduce delays and if a similar dedicated processor was
attached to the host computer at UCLA it probably would not have
caused delays either. However, the UCLA host merely discarded the
data it received, thereby going through fewer steps than if an
external processor was attached, and so our simulation was not exact.
A configuration such as that of Figure 1 did yield information about
host-to-host transmission, since the SEL was essentially a zero-delay
data generator. If real-time processors are to access the ARPA
Network through large-scale time-shared host computers then host-to-
host transmission rate and delay are important measurements. In this
configuration we can expect the host computers to be the primary
bottlenecks in the data path.
Pfeifer & MacAfee [Page 2]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
UCSB UCLA
|------------------------------------------| |-----------------|
+--------+ +-------+ +-------+
| | | | | |
| | 500 Kb/s | | | |
|SEL810-B| +------+ | +------+ |IBM | |IBM |
| |<-|INTER-|<->|INTER-|->|360/75 | |360/91 |
| |->|FACE | |FACE |<-| | | +----+|DISCARD
| | +------+ +------+ | | | | NCP|-->+----+
| | | | | +----+| | |
+--------+ +---^---+ +----^--+ +----+
| | |<--100 Kb/s--> | |
V V | V |
+-----+ +-----+ +-----+
| D/A | | IMP |<---/ /<---| IMP |
+-----+ | |--->/ /--->| |
| +-----+ \ / +-----+
-|\ | \ /
-| \<-+ 50 Kb/s
-| /
-|/SPEAKER
Figure 1. Hardware configuration of data path used
for sending real-time data from the
SEL 810-B to the UCLA host discard socket.
The host response time to requests from the external processor or the
Network will be a function of type of host computer (IBM, DEC,
UNIVAC, etc.), job load, and priorities given to both the Network and
the external processor. If host computers cannot provide the
necessary throughput and necessary response times, then real-time
devices may have to connect directly to IMPs (assuming the Network
can properly support these devices).
III. SOFTWARE
The standard NCP software was used in both host computers. Several
custom programs were required in the UCSB computers in order to
transfer the data and make measurements. These can be divided into
three categories:
1) I/O Programs.
Routines were written for both the IBM 360 and the SEL to handle
the transfer of data between the two computers and to enable the
SEL to send an "attention interrupt" to the IBM 360. These
programs form the software part of the SEL/360 high-speed data
link and are necessary for any communication between the two
computers.
Pfeifer & MacAfee [Page 3]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
2) Network Communications Programs
A protocol was developed which enabled the SEL to communicate to
the 360 the desired Network connections to be made or broken, and
the desired transfer of data across these connections. This
protocol was implemented for each computer using the above I/O
routines.
3) Measurement Control Program
This assembly language program caused the SEL to push data towards
the receiving host (UCLA) at a specified SEL process bit-rate.
The program was also responsible for detecting and measuring the
duration of any gaps introduced in the process.
IV. METHOD
Within the SEL two buffers, each of 1 to 8 network packets in length,
are first loaded with alternating bit patterns in consecutive 16-bit
words. A conversion process is then initiated on one of the buffers
at a sampling frequency necessary to give the desired bit-rate.
Since data is being sent out to a destination host we would expect
the buffers to be filled by an analog-to-digital conversion process.
However, in this experiment, the process of digital-to-analog
conversion is used instead so that we can listen to the alternating
bit patterns as a steady tone while still simulating an A-to-D
process.
When a buffer is filled (played out) a "write" operation is initiated
to send that buffer to UCLA. The next buffer is then tested to see
if the previous "write" has been completed, i.e. the buffer is empty.
If the next buffer is empty the process continues normally. If the
next buffer is not empty it means that one of the computers on the
Network has not taken the data fast enough, therefore a gap has been
introduced in the real-time process. At this point the D-to-A
converter is shut off resulting in an audible break in the tone that
is being played out. A timer is also started to test for the empty
buffer every one millisecond and to measure the duration of the gap.
When the next buffer is finally emptied the D-to-A process is resumed
and the gap data recorded in a table.
V. PROCEDURE
A connection to the UCLA host discard socket was first established
using the network communications programs. Every test from this
point on required a repetition of the following steps.
Pfeifer & MacAfee [Page 4]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
1) Initialize the UCSB IBM 360 for double buffered data transfers
using specified buffer sizes.
2) Initialize the SEL measurement control program with the proper
buffer size and process bit-rate.
3) Start the test. A constant tone from the speaker indicates
that the process is being properly maintained. Gaps in the
tone indicate gaps in the process.
4) After 30 seconds, stop the test.
5) Examine the gap table to determine the number of gaps, the
duration of each gap, and the average duration.
The entire procedure was carried out from the SEL end using the
interactive On-Line System. The timing interval of 30 seconds was
measured with a sweep second hand of a watch and the test was started
and stopped manually. All tests were conducted during prime time to
obtain typical loading conditions.
VI. RESULTS
A total of 179 tests were conducted. Of these, 176 were 30 second
tests and three were long duration tests. Table I contains the
results of the 30 second tests. Buffer sizes were varied from one to
eight Network packets and for each buffer setting 22 different
process bit-rates (usually in increments of 1200 bps) were attempted.
These measurements were performed over a period of three days during
prime time.
Those test conditions which were successful contain only two items of
information in Table I: time of day and number of buffers
transmitted. All but seven of the tests were successful. The tests
which were unsuccessful, i.e. experienced gaps, are those entries in
Table I which contain additional information such as number of gaps,
and maximum, average and minimum gap duration.
An examination of those tests which failed shows that the longest gap
which occurred was 8 seconds in duration. There were three other
significant failures between 9:52 A.M. and 9:59 A.M. on 2/7/73.
There are strong indications that it was the UCSB 360 that caused
these gaps to occur. This conclusion is based upon the fact that the
Electrical Engineering On-Line classroom (16 interactive graphics
terminals) was in full use that day until 10:00 A.M. and the SEL
connection to the IBM 360 has lower priority in the 360 than the UCSB
Pfeifer & MacAfee [Page 5]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
On-Line System. The remaining three tests which failed did not do so
at any regular time, bit-rate, or buffer size so no definite
statements can be made about their source of delay.
The overall picture presented by Table I is very promising. In 96
percent of the trials a communications link of the two host computers
and a portion of the ARPA Network was able to take data from a real-
time process operating as high as 30,000 bits/second. Further
encouragement is given by three additional tests which were carried
out at 30,000 bps and a buffer size of 2,016 bits. On 2/5/73 at 2:20
P.M. a 5-minute test was executed with no gaps. On 2/6/73 at 11:58
A.M. the same test was executed for 8 minutes with no gaps. The
third test was conducted for 18 minutes on 2/7/73 at 11:53 A.M. with
no gaps in the process.
The tests were not carried out often enough or over a long enough
period of time to obtain any statistical results or predictions. The
measurement task is made somewhat difficult by the fact that the
state of the overall communications link is never repeatable from one
test to the next. For example, it was found that a test which failed
could usually be repeated successfully, even when it was carried out
within 15 seconds of the previous test.
Pfeifer & MacAfee [Page 6]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
+-----+---------------------------------------------------------------+
|PRO- | BUFFER SIZE (BITS) |
|CESS | |
|BIT |---------------------------------------------------------------+
|RATE | 1008 | 2016 | 3024 | 4023 | 5040 | 6048 | 7056 | 8048 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|5300 | 11:31 | 9:51 | 11:34 | 10:34 | 10:12 | 1:59 | 1:37 | 12:32 |
| | 158 | 81 | 45 | 41 | 33 | 28 | 24 | 21 |
+-----+-------+-------+-------+-------+-------+-----------------------+
|6000 | 11:32 | 9:52 | 11:40 | 10:35 | 10:13 | 2:00 | 1:38 | 12:36 |
| | 180 | 89 | 61 | 46 | 37 | 31 | 27 | 23 |
| | |-------| | | | | | |
| | | 174ms | | | | | | |
| | | 1 | | | | | | |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|7200 | 11:33 | 9:54 | 11:41 | 10:36 | 10:14 | 2:01 | 1:39 | 12:37 |
| | 216 | 109 | 72 | 54 | 44 | 37 | 33 | 23 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|8400 | 11:34 | 7:55 | 11:42 | 10:37 | 10:14 | 2:02 | 1:40 | 12:38 |
| | 245 | 126 | 82 | 63 | 51 | 42 | 37 | 32 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|9600 | 11:35 | 9:56 | 11:43 | 10:38 | 10:15 | 2:03 | 1:41 | 12:39 |
| | 287 | 83 | 99 | 73 | 58 | 49 | 42 | 36 |
| | |-------| | | | | | |
| | | 8 sec | | | | | | |
| | | 1 | | | | | | |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|10800| 11:36 | 9:57 | 11:44 | 10:39 | 10:16 | 2:04 | 1:42 | 12:40 |
| | 318 | 138 | 109 | 81 | 65 | 56 | 47 | 42 |
| | |-------| | | | | | |
| | | 3 sec| | | | | | |
| | |1.5 sec| | | | | | |
| | |100 ms | | | | | | |
| | | 2 | | | | | | |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|12000| 11:37 | 9:58 | 11:45 | 10:44 | 10:17 | 2:05 | 1:43 | 12:41 |
| | 358 | 180 | 119 | 91 | 73 | 61 | 52 | 46 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|13200| 11:38 | 9:59 | 11:46 | 10:45 | 10:18 | 2:06 | 1:44 | 12:49 |
| | 396 | 188 | 132 | 101 | 80 | 67 | 57 | 49 |
| | |-------| | | | | | |
| | | 438 ms| | | | | | |
| | | 269 ms| | | | | | |
| | | 100 ms| | | | | | |
| | | 2 | | | | | | |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
Pfeifer & MacAfee [Page 7]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
|14400| 11:39 | 10:45 | 11:46 | 10:46 | 10:18 | 2:07 | 1:45 | 12:50 |
| | 428 | 213 | 141 | 107 | 88 | 73 | 62 | 56 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|15600| 11:39 | 10:46 | 11:47 | 10:47 | 10:19 | 2:08 | 1:46 | 12:51 |
| | 467 | 232 | 156 | 117 | 94 | 79 | 67 | 59 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|16800| 11:40 | 11:15 | 11:43 | 10:48 | 10:20 | 2:09 | 1:47 | 12:52 |
| | 503 | 243 | 168 | 127 | 100 | 85 | 72 | 63 |
| | |-------| | | | | | |
| | | 190 ms| | | | | | |
| | | 128 ms| | | | | | |
| | | 29 ms| | | | | | |
| | | 3 | | | | | | |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|18000| 11:41 | 11:17 | 11:48 | 10:49 | 10:21 | 2:10 | 1:48 | 1:00 |
| | 535 | 266 | 179 | 136 | 107 | 90 | 76 | 68 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|19200| 11:42 | 11:18 | 11:49 | 10:50 | 10:22 | 2:11 | 1:49 | 1:20 |
| | 573 | 285 | 191 | 144 | 114 | 98 | 82 | 73 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|20400| 11:42 | 11:19 | 11:50 | 10:51 | 10:23 | 2:12 | 1:50 | 1:21 |
| | 610 | 303 | 202 | 153 | 123 | 103 | 87 | 75 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|21600| 11:43 | 11:20 | 11:51 | 10:52 | 10:24 | 2:13 | 1:51 | 1:22 |
| | 643 | 327 | 213 | 162 | 130 | 108 | 94 | 81 |
| | | | | | | | |-------|
| | | | | | | | | 98 ms |
| | | | | | | | | 30 ms |
| | | | | | | | | 5 ms |
| | | | | | | | | 10 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|22800| 11:44 | 11:21 | 11:51 | 10:53 | 10:25 | 2:14 | 1:52 | 1:27 |
| | 687 | 344 | 223 | 173 | 138 | 113 | 99 | 86 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|24000| 11:44 | 11:22 | 11:52 | 10:54 | 10:26 | 2:15 | 1:53 | 1:29 |
| | 712 | 352 | 240 | 180 | 143 | 122 | 103 | 93 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|25200| 11:45 | 11:23 | 11:53 | 10:55 | 10:27 | 2:16 | 1:54 | 1:30 |
| | 741 | 375 | 252 | 193 | 146 | 126 | 109 | 96 |
| | | | | |-------| | | |
| | | | | | 149 ms| | | |
| | | | | | 70 ms| | | |
| | | | | | 2 ms| | | |
| | | | | | 13 | | | |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
Pfeifer & MacAfee [Page 8]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
|26400| 11:46 | 11:24 | 11:54 | 10:56 | 10:30 | 2:17 | 1:55 | 1:31 |
| | 786 | 395 | 264 | 203 | 160 | 131 | 113 | 100 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|27600| 11:47 | 11:27 | 11:55 | 10:57 | 10:31 | 2:18 | 1:56 | 1:32 |
| | 819 | 410 | 276 | 213 | 167 | 140 | 119 | 104 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|28800| 11:48 | 11:28 | 11:56 | 11:30 | 10:32 | 2:19 | 1:57 | 1:33 |
| | 856 | 429 | 287 | 217 | 171 | 145 | 125 | 110 |
+-----+-------+-------+-------+-------+-------+-------+-------+-------+
|30000| 11:49 | 11:30 | 11:57 | 11:33 | 10:33 | 2:20 | 1:58 | 1:34 |
| | 896 | 447 || 299 | 224 | 180 | 151 | 129 | 112 |
+-----+-------+------|+-------+-------+-------+-------+-------+-------+
| 2/7/73 (a.m.)|| 2/6/73 (a.m.) | 2/5/73 (p.m.) |
+--------------|+-----------------------+-----------------------+
V
2/5/73 | 2/6/73 | 2/7/73
5 min. test | 8 min. test | 10 min. test
@ 2:20 pm | @ 11:53 am | @ 11:53 am
no gaps | no gaps | no gaps
4669 buffers sent | 7141 buffers sent | 16071 buffers sent
+-- +--------+
| time of day----| 9:35 | Results of a test for transmitting
| # buffers sent-| 76 | data from a continuous external
| |--------| process at UCSB (SEL 810B computer)
KEY-| max. gap time--| 119 ms | through the UCSB Host computer, over
| avg. gap time--| 50 ms | the ARPA network, and into a UCLA
| min. gap time--| 2 ms | (site 65) Host discard socket
| # gaps (discon-| 3 | (socket 9). Each test (approx.) 30
| tinuity in +--------+ sec.
| process)
+--
VII. CONCLUSIONS
Based upon the results of this experiment the following conclusions
can be drawn:
1) High bit-rate real-time processes can use the ARPA Network to
transmit data for relatively long periods of time.
2) Real-time processes accessing the Network through large-scale
timesharing host computers can expect arbitrary delays or gaps,
probably attributable to the host computers and not the
Network.
Pfeifer & MacAfee [Page 9]
^L
RFC 508 Real-Time Data Transmission On The Arpanet 7 May 1973
3) Techniques for handling gaps of 1/2 to 1 second may be possible
but 8 second gaps, as measured in this experiment, will cause
extreme hardship on any real-time process.
This experiment has pointed up the need to conduct additional tests
using a complete transmission link with actual data and with
monitoring equipment at both the sending and receiving ends. Our
current and future efforts are directed toward carrying out such
experiments.
REFERENCES
[1] "Interface Message Processors for the ARPA Computer Network",
Quarterly Technical Report No. 16, 1 Oct 1972 to 31 Dec 1972,
Bolt, Beraneck and Newman, Inc.
[2] Semiannual Technical Summary on Graphics, Lincoln Laboratory,
Massachusetts Institute of Technology, Nov 1971.
[3] D.L. Retz, "An Interactive System for Signal Analysis: Design,
Implementation, and Applications", CSL Report No 25, Computer
Systems Lab, University of California, Santa Barbara, CA, 1972.
[ This RFC was put into machine readable form for entry ]
[ into the online RFC archives by Via Genie ]
Pfeifer & MacAfee [Page 10]
^L
|