NetDB3 Quicksearch Specs
4/24/00 reviewed by Rob
9/28/00 by Sunia Last modified
Compiled from meetings, discussions, Ganapathy's emails, etc.
Table of Contents
Two inputs are allowed- object radio buttons and form field.
Radio Buttons
The radio buttons below the quick search form field allow the user to narrow
down the search by object type. The following radio buttons will be displayed
in this order with Node being the default selection:
Node All Admin Team MX User Network Group
3 types of input are allowed in the form field:
Name
Name Types
- Node Name
- IP Address Name
- Interface Name
- IPC IP Address Name
- Dynamic DHCP address Name
- Alias
- MX
- Network Name
- Group Name
- Admin Team Name
- User Name
- Domain Name
Name Input Forms
- search is case insensitive
- dots are regarded as separator between name and domain name
- if no domain is specified, search in all domains
- Following wildcards are allowed: *, ?, %, _, [ ], [^]
- * and % are multi-character wildcards
- _ and ? are single character wildcards
- [ ] indicates a range of characters
- [^] indicates NOT in a range of characters
IP Addresses
IP Address Types
- Node Interface IP Addresses
- IPC IP Address
- Dynamic DHCP IP Address
- Address Space
IP Address Input Forms
- Must be in form x.y.y.y where x is a number from 0-255. y is a number
from 0-255 or a wildcard. i.e., wildcards are allowed but first octet must
be fully defined (e.g., 36 or 171). If y is a wildcard, subsequent octets
do not need to be listed- e.g., "36.6.*" is a valid search string
- Following wildcards are allowed: *, ?, %, _, [ ], [^]
- * and % are multi-character wildcards
- _ and ? are single character wildcards
- [ ] indicates a range of characters
- [^] indicates NOT in a range of characters
Hardware Addresses
Hardware Address Types
- Interface Hardware Addresses
Hardware Address Input Forms
- No wildcards allowed
- Digits should be hexadecimal- 0-9, a-f or A-F
- Input must follow one of these forms to be recognized as hw address
- 01-23-45-07-89-0b or 1-23-45-7-89-b (leading zeros are optional)
- 01:23:45:07:89:0b or 1:23:45:7:89:b (leading zeros are optional)
- 0123.4507.890b
- 012345:07890b
- 01234507890b:
- First column will display names.
- Then 3 columns for Mod Del Tmpl. Columns displayed regardless of user's actual rights.
- Last column may be name belonging to IP address, name belonging to alias, IP address
belonging to name, etc. See below table
- Results will be grouped as follows:
- Node: Node, Aliases, Routers, IPCs, Advanced, Template Node
- Router: Router
- IPC: IPC
- Advanced: Advanced Nodes
- Template: Template Nodes
- MX: MX plus the node that receives mail for this name and priority
- IPC IP address: address and the associated IPC
- Network: Network
- Dynamic DHCP: Dynamic DHCP addresses associated with Network
- A search on IP addresses yields one IP address per line, even if they are from the same object.
A search on names yields one name with first Ip address per line, even if object has multiple
addresses.
- Display is case sensitive (i.e., displayed the way user entered strings)
- Results will be numbered.
- Result count will be displayed at top.
- If search result limit is hit, warning will be displayed. Search result limit is set by system parameters. Current limit is 512 lines.
- Single results will go directly to the results page. (Changed 9/28/00. Single results still go to results page)
- If the single result is deleted or modified in such a way that the search will now fail, the user should be returned to the home
page with a success message and no error message. (9/28/00)
- Domains only listed when not user's default domain. If no user's default domain, use default
default domain as user's default domain.
- When listing an IP address for an interface, this is the order of display-
- 1st active address (IP addresses sorted by interface order)
- 1st inactive address (IP addresses sorted by interface order)
- No address
| First Column (What searched on) | Last Column | Links To |
| | | |
| Node Name | 1st active IP address | Node |
| IP Address Name | IP Address | Node |
| Interface Name | IP Address | Node |
| IPC IP Address Name | IPC IP Address | IPC |
| Dynamic DHCP Address Name | Dynamic DHCP IP Address | Network |
| Alias | Node Name | Node |
| MX | Mail Server Name (pref) | Node |
| Network Name | 1st Address Space | Network |
| Group Name | | Group |
| Admin Team Name | | Admin Team |
| User Name | | User |
| Domain Name | | Domain |
| Node Interface IP Address | Node Name | Node |
| IPC IP Address | IPC IP Address Name | IPC |
| Dynamic DHCP IP Address | Dynamic DHCP Address Name | Network |
| Address Space | Network Name | Network |
| Interface Hardware Address | Node Name | Node |
Objects can be found by searching on the followng associated fields
| OBJECT | SEARCH PARAMETERS |
| Domain | name |
| Group | name |
| User | name |
| Admin Team | name |
| Network | Network name, Dynamic addr, Dynamic addr name |
| Node | Node name, Alias, Interface name, IP addr, IP addr name,
IPC addr, IPC addr name |
Searches in general are slow down due to the inclusion of the ownership check done upfront.
There checks are part of the search inorder to enable/disable the "mod del tmpl" links
If we do not perform these checks during the search, there is a significant improvement in the search speed.
a comparision...... approx time taken in secs.
- search string net* ne* n*
- without owner check 1 1.6 2
- with owner check 7 11 24
further optimization attempts using temp tables or restricting the no. of rows in the results, does not have a significant effect.
Rob,
You may want to take a look at the different versions.....
I have three procedures in nedtb_test2 for this purpose...
- qsNodeByAnyName -- searches for Nodes by name, IP address name, Interface name.
- qsNodeByAnyNameT -- uses Temp tables and row count 100
- qsNodeByAnyNameS -- S for Simple. no ownership group check.
-
- these procedures take four parameters..
- @nmName Name
- @fqDomain Domain
- @wrdSUNetId User SUNetId for ownership check
- @isLike 1 -- uses Like clause, 0 -- uses 'equal to' for name comparision in the query
- 12/14 Decided not to do ownership checks to save time- ownership will
be checked when user takes action
- 12/15 Decided only to save last search results
- Will move Quicksearch SQL to MW when implement whois
- Will redo Quicksearch with FullSearch engine
- Accept address space formats to specify range of addresses
THE END