[comp.protocols.appletalk] PacerLink weirdness

mark@sickkids.UUCP (Mark Bartelt) (12/23/88)

Before describing the problem, here's the configuration:  VAX/750 running
4.3bsd, with a Kinetics FastPath 2 connecting the ethernet to an AppleTalk
network.  We have both NCSA telnet (version 2.1) and the PacerLink software
(version 5.0a) available for people to use for connecting Macs to the VAX.
Compared to telnet, the PacerLink software seems a bit sluggish.

That in itself isn't totally surprising, since the Pacer software has a lot
more stuff buried inside it, for doing file transfers and such.  Just out
of curiosity, I used /etc/ping to see how long it would take Macs running
telnet and PacerLink to respond.  Using 500-byte ping packets, the times
for the Pacer software were more than three times longer than those for
NCSA telnet.  Again, not altogether surprising.  One thing that seemed a
little peculiar was the fact that, on a 200-packet test, not only were the
average times larger, but so were the standard deviations (as percentages
of the means).  The times reported by "ping" were 93ms +- 17% for telnet,
whereas the Pacer times were 300ms +- 44%.

However, the *real* oddity is what we saw when we actually looked at the
ping times.  For telnet, the values look pretty much as one would expect,
with values more or less randomly scattered around the mean:

   89    112    158    121    105     76    100     89      82     75
   76     80     81    111    114    110     81     78     119     91
  114     75    101     79     91     95    122    100      91     78
   82     93     81    116     82     79    112     80      80    121
  130     83     80     90    123    124     96     90      95     91
   93    114    120     81     86     92     80     80      80     81
   77     87     87    112    163     82     76    117      91    115
  104     76     81     85    112    119     93     85      81     83
   83     98     98     76     93     87     82     76      96     79
   89     77     83    109     81     83    121    109      80     95

But with the Pacer software running in the Mac, there's an unexpected
periodicity, with near-monotonicity within each period.  Take a look at
these numbers (read down the columns for sequential ping times):

  231    334    236    148    362    284    340    204     445    364
  270    390    295    185    382    340    399    225     466    384
  290    389    344    205    420    394    464    246      90    407
  311    412    402    227    442    447    522    266     155    423
  336    433    452    248    477    518    546    304     211    448
  369    470    511    268    482    525    112    325     246    485
  107    490    551    289    520    101     90    346     299    502
  154    515     90    310    103    161    124    366     370     91
  209    100    104    331    156    231    147    404     424    142
  281    165    128    341    210    291    167    425     344    195

Does anyone have a clue (or would anyone like to hazard a guess) as to
what's going on here?

Mark Bartelt                          UUCP: {utzoo,decvax}!sickkids!mark
Hospital for Sick Children, Toronto   BITNET: mark@sickkids.utoronto
416/598-6442                          INTERNET: mark@sickkids.toronto.edu

sbm@PURDUE.EDU (12/24/88)

The question was about round-trip times reported by ping:

> But with the Pacer software running in the Mac, there's an unexpected
> periodicity, with near-monotonicity within each period.

     The reason for this behavior is pretty simple.  It looks like the
Pacer software uses the default socket listener, which posts an event
when a packet arrives, and checks for events about every half second,
but not exactly every half second, so that some packets will arrive just
before the event queue is checked, yielding the actual packet turnaround
time of 90-103ms, and others will arrive just after the queue was
checked, yielding the longest delay (caused by waiting for the software
to check the queue again) of 466-551ms.  Ping sends packets every
second, so you see a nice progression as the phase between ping and the
Pacer software slowly changes.

     NCSA telnet, apparently, either checks for events very often
(perhaps once every 30ms, judging from the variation of the round-trip
times), or uses its own socket listener to respond immediately,
interrupt-style, when packets arrive.

					Steve Munson
					sbm@Purdue.EDU
					sbm@Purdue.CSNET
----------