Subject: experimental blast network service Here are brief instructions for setting up the client side to the Experimental BLAST Network Service, to gain access to current BLAST application programs and sequence databases at the NCBI. This software is provided "as is" and is not supported by the NCBI. Support for the Experimental BLAST Network Service in the particular form utilized by this software will continue only indefinitely. On the BLAST client computer: (0) Install the basic "blast.client" executable program wherever you wish, perhaps in /usr/local/bin. The UNIX version of this program requires that the ncbi and gish libraries be built first which are posted on blast.wustl.edu beneath the /blast directory. These same libraries are necessary to build the actual blast application programs themselves, the source code for which is also posted beneath the /blast directory. Appropriate UNIX-style manual pages for the application programs are included with the blast application source code. (1) Create soft links to "blast.client" named "blastp.remote", "blastn.remote", "blastx.remote", "tblastn.remote", and "blast3.remote". ln -s blast.client blastp.remote ln -s blast.client blastn.remote ln -s blast.client blastx.remote ln -s blast.client tblastn.remote ln -s blast.client blast3.remote (2) Although not essential for running the BLAST network software, to reduce the chance of conflicting with other network software, make the following one-line addition to the /etc/services file or in the Yellow Pages/NIS "services" database on the client computer: blast 5555/tcp (3) Follow the instructions in the README file, to register the IP (Internet protocol) addresses of all prospective client computers. Please restrict this list to a small number of computers and only to computers that you "trust". BLAST client programs will be denied access to the BLAST service until these addresses have been entered in an access control list on the BLAST server computer. If you have several prospective client computers in one Internet subnet, or if the addresses of client computers in a subnet will be changing frequently, you may wish to request that the subnet in its entirety be added to the access control list; any changes you may subsequently make to the addresses of client computers on that subnet will then not need to be propogated to the access control list. Here are some sample commands: blastp.remote nr myseq.aa blastn.remote nr myseq.nt e=1 A user of the Experimental BLAST Network Service is restricted to searching whichever databases and with whatever PAM substitution matrices are available on the server computer. Only the query sequence and numerical command line options are user selectable. As with the real BLAST application programs, the query sequence file should be in FASTA format. >DUMMYSEQ only a one-line description is permitted MKDFWPPAGHVNNCNNSSEEGEGEGEGPPPEPPGGAGA WQRRYRYURYRYRYRRRR Unlike the real application programs, Intelligenetics format sequences may also be used. ; Zero or more comment lines starting with ; a semicolon, followed by the sequence name on a line by itself DUMMYSEQ MKDFWPPAGHVNNCNNSSEEGEGEGEGPPPEPPGGAGA WQRRYRYURYRYRYRRRR (Note: if you acquired the client software from somewhere other than the NCBI, the client program may expect the query sequence to be in a format other than FASTA or Intelligenetics). To guard against unruly queries, the BLAST server kills searches that are in preparation or in progress if a cpu time limit is exceeded, if too much memory is demanded by the query, or if too much output is produced. These events and other error conditions are usually reported to the user; other times the server's connection to the client may be severed w/o any indication why this has happened. Occasionally a connection may be dropped simply because of a problem with the network linking the NCBI with the remote client's site, although such problems are becoming less frequent as the quality of the network improves. The UNIX client program is reasonably adept at detecting incomplete output and other errors and at signalling these conditions to the user in the form of both an error message and a non-zero exit status that can be sensed in shell scripts. --Warren Gish gish@watson.wustl.edu