187
|
1 .PS 3.5
|
|
2 arrowhead = 18
|
|
3
|
|
4 define disk {
|
|
5 Disk: [
|
|
6 ellipsewid=ellipsewid/2
|
|
7 ellipseht=ellipseht/2
|
|
8 ellipse
|
|
9 spline down ellipseht*4/3 from last ellipse.w \
|
|
10 then right ellipsewid \
|
|
11 then up ellipseht*4/3 to last ellipse.e
|
|
12 ]
|
|
13 }
|
|
14
|
|
15 define machine {
|
|
16 box wid $1.wid+.3 ht $1.ht+.3 dashed at $1
|
|
17 }
|
|
18
|
|
19 up
|
|
20 Sender: [
|
|
21 ellipse "\fBMUA\fP"
|
|
22 ellipse "MSA"
|
|
23 ]
|
|
24 machine(Sender)
|
|
25
|
|
26 arrow 3*linewid from Sender.n
|
|
27
|
|
28 right
|
|
29 Server1: [
|
|
30 ellipse "MTA"
|
|
31 ] with .s at last arrow.end
|
|
32 machine(Server1)
|
|
33
|
|
34 arrow 2*linewid from Server1.e
|
|
35 box invis ". . ."
|
|
36 arrow 2*linewid
|
|
37
|
|
38 Server2: [
|
|
39 ellipse "MTA"
|
|
40 ellipse "MDA"
|
|
41 arrow linewid/2
|
|
42 disk
|
|
43 move to Disk.s - (0,.05)
|
|
44 ]
|
|
45 machine(Server2)
|
|
46
|
|
47 down
|
|
48 arrow <- 3*linewid dashed from Server2.s+(.86,0)
|
|
49 arrow 3*linewid from Server2.s+(.9,0)
|
|
50
|
|
51 Recipient: [
|
|
52 ellipse "MRA"
|
|
53 ellipse "MDA"
|
|
54 move to last ellipse.w
|
|
55 left
|
|
56 arrow linewid/2
|
|
57 disk
|
|
58 arrow <-> linewid/2
|
|
59 #arrow <-> linewid/2 from Disk.w+(0,.03)
|
|
60 #arrow linewid/2 from Disk.w+(0,-.03)
|
|
61 ellipse "\fBMUA\fP"
|
|
62 ] with .n at last arrow.end-(.8,0)
|
|
63 machine(Recipient)
|
|
64
|
|
65 line from .5 <Sender.nw,Server1.sw> to .5 <Server2.se,Recipient.ne> dotted
|
|
66 .PE
|