ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/documentation/specification/protocols.txt
(Generate patch)

Comparing projects/cms/documentation/specification/protocols.txt (file contents):
Revision 1.4 by ajm, Sun Jan 28 20:16:19 2001 UTC vs.
Revision 1.7 by ajm, Mon Jan 29 10:03:14 2001 UTC

# Line 12 | Line 12 | Contents
12   - Client Control Protocol
13   - Client Data Protocol
14  
15
15   Conventions
16   -----------
17   All protocols in this document assume a valid connection of
# Line 26 | Line 25 | is a variety of options they will be separated with th
25   character.  For example:
26  
27      [OK|ERROR]
28 <  
28 >  
29   Indicates that the message "OK" OR the message "ERROR" will
30   be sent depending on the result of the last action.
31  
# Line 36 | Line 35 | of data that will be returned.  For example:
35  
36      {lastmodified}
37  
38 < Indicates that data for use as 'last modified' will be
39 < returned.  
38 > Indicates that data for use as 'last modified' will be
39 > returned.  
40  
41 < If [ERROR] is sent back at any time, this indicates that all
41 > If [ERROR] is sent back at any time, this indicates that all
42   communication is over. EXCEPT where otherwise specified!
43  
45
44   Host Connection Protocol
45   ------------------------
46   The initial connection of a host to the i-scream server is
# Line 58 | Line 56 | Host         (direction) Server         Comment
56   [STARTCONFIG]---------->                Requests to start
57                                          receiving config
58                                          information
59 <            
59 >          
60               <---------- [OK|ERROR]     If the server ok's
61                                          the request or not
62  
# Line 67 | Line 65 | Host         (direction) Server         Comment
65                                          (used when checking
66                                          if the config has
67                                          changed)
68 <            
68 >          
69               <---------- [{lastmodified}Returns a long int
70                           |ERROR]        time since epoch
71                                          eg, 123456789
72 <
72 >                                        To indicate what
73 >                                        format this is in,
74 >                                        I quote from the
75 >                                        Java 1.3 JDK API
76 >                                        "measured in milli
77 >                                        -seconds since the
78 >                                        epoch"
79 >                                      
80   [FILELIST]   ---------->                Asks the server for
81                                          the list of files
82                                          that were used to
# Line 79 | Line 84 | Host         (direction) Server         Comment
84                                          (used when checking
85                                          if the config has
86                                          changed)
87 <      
87 >      
88               <---------- [{filelist}    Returns a semi-colon
89                           |ERROR]        separated list of
90                                          filenames
# Line 95 | Line 100 | Host         (direction) Server         Comment
100                                          retrieved from the
101                                          config file
102                                          eg, UDPUpdateTime
103 <            
103 >          
104               <---------- [{value}|ERROR]Returns the value of
105                                          the requested config
106                                          property
# Line 104 | Line 109 | Host         (direction) Server         Comment
109                                          find the requested
110                                          property it returns
111                                          ERROR to indicate
112 <                                        that fact, but
113 <                                        communication still
112 >                                        that fact, but
113 >                                        communication still
114                                          proceeds
115 <                                      
115 >                                      
116               ********** LOOP UNTIL **********
117               The loop continues until the host
118               sends the following message
119 <            
119 >          
120   [ENDCONFIG]  ---------->                Indicates that the
121                                          host requires no
122                                          more config
123 <            
123 >          
124               ********** LOOP  END **********
125               Communication continues
126 <            
126 >          
127               <---------- [OK]           Indicates that the
128                                          server is ready to
129                                          proceed
130 <                                      
130 >                                      
131   [FILTER]     ---------->                Asks the server to
132                                          send it the host
133                                          information of a
134                                          filter that it
135                                          should connect to
136 <                                      
136 >                                      
137               <---------- {filter}       Returns a semi-colon
138                                          separated list of
139                                          FQDN hostname, UDP
# Line 146 | Line 151 | Host         (direction) Server         Comment
151                                          server that the host
152                                          has finished an will
153                                          disconnect
154 <            
154 >          
155               <---------- [OK|ERROR]     Indicates that the
156                                          server is either ok
157                                          or that it thought
158                                          there was an error
154 <<<<<<< protocols.txt
159   ------------------------------------------------------------
160 <
157 < =======
158 <      
159 < >>>>>>> 1.2
160 >      
161   Host Heartbeat Protocol
162   -----------------------
163   When a host is configured after it has connected it should
# Line 174 | Line 175 | Host            (direction) Server      Comment
175   [HEARTBEAT]     ---------->             Starts the
176                                          heartbeat protocol
177                                          off
178 <                                      
178 >                                      
179                  <---------- [OK|ERROR]  Indicates that the
180                                          server is ok or not
181  
# Line 205 | Line 206 | Host            (direction) Server      Comment
206                                          identical to the one
207                                          received in the
208                                          connection protocol
209 +                                        To indicate what
210 +                                        format this is in,
211 +                                        I quote from the
212 +                                        Java 1.3 JDK API
213 +                                        "measured in milli
214 +                                        -seconds since the
215 +                                        epoch"
216  
217                  <---------- [OK|ERROR]  The server then
218                                          checks all the files
# Line 230 | Line 238 | Host            (direction) Server      Comment
238                                          server that the host
239                                          has finished an will
240                                          disconnect
241 <              
241 >              
242                  <---------- [OK|ERROR]  Indicates that the
243                                          server is either ok
244                                          or that it thought
# Line 251 | Line 259 | Client Control Protocol
259   The client control protocol channel is opened by the client
260   and allows a variety of actions to be carried out by the
261   client at anytime.  Unlike previous protocols, this is NOT
262 < sequential, all of the requests can be carried out in
262 > sequential, all of the requests can be carried out in
263   any order.
264  
265   All client protocols are backwards compatible, and the
# Line 277 | Line 285 | v1.0 - Protocol identifier: "PROTOCOL 1.0" (without qu
285   Host         (direction) Server         Comment
286   ------------------------------------------------------------
287   <initialise>
280 [CONNECT]    ---------->                Starts off the
281                                        client protocol
282            
288               <---------- [{protocol}]   The server sends the
289                                          protocol identifier
290 <                                        
290 >                                      
291   [{name}]     ---------->                The client sends its
292                                          "name".  This name
293                                          is used to identify
# Line 290 | Line 295 | Host         (direction) Server         Comment
295                                          to the system and
296                                          obtain its config
297                                          eg, Conient
298 <            
298 >            
299               <---------- [OK]           Indicates the server
300                                          is ok to proceed
301 <                        
301 >                      
302  
303   <command #1> (allows client to obtain its configuration)
304   [STARTCONFIG]---------->                Tell the server we
305                                          want to start this
306                                          command
307 <            
307 >            
308               <---------- [OK]           Indicates the server
309                                          is ok to proceed
310 <            
310 >            
311               ********** LOOP START **********
312               This loop reads configuration
313               properties from the config
# Line 313 | Line 318 | Host         (direction) Server         Comment
318                                          config file
319                                          Clients can obtain
320                                          host information
321 <                                        eg,
321 >                                        eg,
322                                          Host.UDPUpdateTime
323                                          Otherwise it must
324                                          prefix requests
# Line 321 | Line 326 | Host         (direction) Server         Comment
326                                          All other requests
327                                          will be ignored as
328                                          if it was unable to
329 <                                        retieve the property
330 <                                        
329 >                                        retrieve the
330 >                                        property
331 >                                      
332               <---------- [{value}|ERROR]Returns the value of
333                                          the requested config
334                                          property
335                                          eg, 120
336                                          If it is unable to
337 <                                        find the requested
337 >                                        find the requested
338                                          property it returns
339                                          ERROR to indicate
340                                          that fact
341 <                                        
341 >                                      
342               ********** LOOP UNTIL **********
343               The loop continues until the client
344               sends the following message
345 <            
346 < [ENDCONFIG]  ---------->                Indicates that the
345 >            
346 > [ENDCONFIG]  ---------->                Indicates that the
347                                          client requires no
348                                          more config
349 <            
349 >            
350               ********** LOOP  END **********
351               Communication continues
352 <            
352 >            
353               <---------- [OK]           Indicates that the
354                                          server is ready to
355                                          proceed
# Line 352 | Line 358 | Host         (direction) Server         Comment
358   [STARTDATA]  ---------->                Tell the server we
359                                          want to start this
360                                          command
361 <            
361 >          
362               <---------- [{portnumber}  The server then sets
363                           |ERROR]        itself listening for
364                                          a connection on its
# Line 362 | Line 368 | Host         (direction) Server         Comment
368                                          that it is listening
369                                          on eg, 12367
370                                          If the data link is
371 <                                        yet to be started
372 <                                        the server will
373 <                                        return ERROR
374 <            
375 <             <---------- [OK]           Indicates the server
376 <                                        is ok to proceed and
377 <                                        the client can
378 <                                        then connect its
373 <                                        data link
371 >                                        already started the
372 >                                        server will return
373 >                                        ERROR
374 >            
375 >             <---------- [OK]           Indicates the client
376 >                                        has successfully
377 >                                        connected to the
378 >                                        data socket.
379  
380   <command #3> (tells the server to stop the data link)
381   [STOPDATA]   ---------->                Tell the server we
382                                          want to start this
383                                          command
384                                          The server then
385 <                                        shuts down the
385 >                                        shuts down the
386                                          data link to the
387                                          client
388  
# Line 393 | Line 398 | Host         (direction) Server         Comment
398                                          client wants to
399                                          close the control
400                                          link
401 <                                        
401 >                                      
402               <---------- [OK]           The last word from
403                                          the server, it will
404 <                                        disappear after this
404 >                                        disappear after
405 >                                        this, and close the
406 >                                        data link if
407 >                                        required
408   ------------------------------------------------------------
409  
410   v1.1 - Protocol identifier: "PROTOCOL 1.1" (without quotes)
# Line 410 | Line 418 | Host         (direction) Server         Comment
418   [SETHOSTLIST]---------->                Tell the server we
419                                          want to start this
420                                          command
421 <            
421 >            
422               <---------- [OK|ERROR]     The server will
423                                          return an ERROR if
424                                          the data link is
425                                          open, as a host list
426 <                                        must ONLY be set
426 >                                        must ONLY be set
427                                          if the data link is
428                                          closed
429                                          If the server is
# Line 430 | Line 438 | Host         (direction) Server         Comment
438                                          recieve data from
439                                          eg,
440          raptor.ukc.ac.uk;killigrew.ukc.ac.uk;chalk.ukc.ac.uk
441 <                                        
441 >                                      
442                                          If the list is sent
443                                          blank (or if no list
444                                          is set at all) then
445                                          data from ALL hosts
446                                          will be sent to the
447 <                                        client
448 <                                        
447 >                                        client (this is the
448 >                                        default if no
449 >                                        SETHOSTLIST is not
450 >                                        run by the client
451 >                                      
452               <---------- [OK]           Indicates the server
453                                          is ok to proceed and
454 <                                        the host list has
454 >                                        the host list has
455                                          been accepted
456   ------------------------------------------------------------
457  
458   Client Data Protocol
459   --------------------
460   Once the data link has been opened by the control link, the
461 < server will send XML formated data packets seperated by the
462 < \n (newline) character.  For information on the format of
461 > server will send XML formatted data packets separated by the
462 > \n (newline) character.  For information on the format of
463   this data see the XML via UDP specification document at:
464  
465   http://www.i-scream.org.uk/cgi-bin/docs.cgi?doc=specification/xml_via_udp.txt

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines