Subversion Repositories planix.SVN

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
.TH SDP 3
2
.SH NAME
3
sdp \- secure datagram protocol
4
.SH SYNOPSIS
5
.nf
6
.B bind -a #E\fIspec\fP /net
7
.sp 0.3v
8
.B /net/sdp/clone
9
.B /net/sdp/log
10
.BI /net/sdp/ n
11
.BI /net/sdp/ n /data
12
.BI /net/sdp/ n /control
13
.BI /net/sdp/ n /ctl
14
.BI /net/sdp/ n /rstats
15
.BI /net/sdp/ n /stats
16
.BI /net/sdp/ n /status
17
\&...
18
.fi
19
.SH DESCRIPTION
20
The
21
.I sdp
22
device provides the interface to the Secure Datagram Protocol (SDP).
23
SDP (un)compresses and (de-)encrypts packets.
24
.I Spec
25
is an integer from 0 to 15 identifying a stack.
26
Each stack is independent of all others:
27
the only information transfer between them is via programs that
28
mount multiple stacks.
29
Normally a system uses only one stack.
30
However multiple stacks can be used for debugging
31
new networks or implementing firewalls or proxy
32
services.
33
.PP
34
The top level directory contains a
35
.B clone
36
file, a
37
.B log
38
file, and subdirectories numbered from zero to the number of connections
39
opened for this protocol.
40
.PP
41
Opening the
42
.B clone
43
file reserves a connection.  The file descriptor returned from the
44
.IR open (2)
45
will point to the control file,
46
.BR ctl ,
47
of the newly allocated connection.
48
Reading
49
.B ctl
50
returns a text
51
string representing the number of the
52
connection.
53
Connections may be used either to listen for incoming calls
54
or to initiate calls to other machines.
55
.PP
56
A connection is controlled by writing text strings to the associated
57
.B ctl
58
file.
59
After a connection has been established data may be read from
60
and written to
61
.BR data .
62
A connection can be actively established using the
63
.B connect
64
message (see also
65
.IR dial (2)).
66
A connection can be established passively by first
67
using an
68
.B announce
69
message (see
70
.IR dial (2))
71
to bind to a local port and then
72
opening the
73
.B listen
74
file (see
75
.IR dial (2))
76
to receive incoming calls.
77
.PP
78
The following control messages are supported:
79
.TF "outsecret \fIsecret
80
.PD
81
.TP
82
.BI accept " file"
83
Accept an incoming encrypted connection on
84
.IR file ,
85
typically a
86
.B data
87
file.
88
.TP
89
.BI dial " file"
90
Initiate a new encrypted connection on
91
.IR file ,
92
typically a UDP
93
.B data
94
file.
95
.TP
96
.BI drop " permil"
97
Randomly drop approximately one of every
98
.I permil
99
output packets,
100
thus simulating network errors.
101
.TP
102
.BI cipher " algorithm"
103
Use ciphering
104
.IR algorithm ;
105
choices are
106
.LR null ,
107
.LR des_56_cbc ,
108
.LR rc4_128 ,
109
and
110
.LR rc4_256 .
111
.TP
112
.BI auth " algorithm"
113
Use authentication
114
.IR algorithm ;
115
choices are
116
.LR null ,
117
.LR hmac_sha1_96 ,
118
and
119
.LR hmac_md5_96 .
120
.TP
121
.BI comp " algorithm"
122
Use compression
123
.IR algorithm ;
124
choices are
125
.L null
126
and
127
.LR thwack .
128
.TP
129
.BI insecret " secret"
130
Use
131
.I secret
132
to decrypt incoming packets.
133
.TP
134
.BI outsecret " secret"
135
Use
136
.I secret
137
to encrypt outgoing packets.
138
.
139
.SH "SEE ALSO"
140
.IR dial (2),
141
.IR ip (3)
142
.br
143
.IR "Robust Data Compression of Network Packets" ,
144
Sean Dorward and Sean Quilan, Bell Labs, Lucent Technologies,
145
.BR http://plan9.bell-labs.com/who/seanq/networkcomp.pdf .
146
.SH SOURCE
147
.B /sys/src/9/port/devsdp.c