BootP was the first network bootstrap protocol intended to allow computers to start up and help them find what they need to get functioning. BootP is a broadcast protocol, that is, it sends a message out to all hosts on the network looking for answers. It is not as efficient and does not have all the options of Dynamic Host Control Protocol (DHCP).
BOOTP was intended to allow a terminal or diskless workstation to bootstrap its hardware, read the PROM, retreive the BOOTP program from the PROM and use BootP to contact a BOOTP server to get a network address and information about where to find the operating system. The terminal station would then download the operating system via TFTP. BOOTP lacks the extensions that were added for DHCP which can provide information such as the default gateway and network servers providing critical network functions (DNS, WINS, NTP, NFS, NIS etc.). BOOTP lacks the lease and renewal features of DHCP, thus a client that is infrequently used still uses up an IP address and must be rebooted to aquire a new address. This requires a trip to every machine on the network.
This makes BOOTP ideal for such protocols as Sun's Jumpstart or Cisco's autoconfiguration mechanism.
Bootstrap protocol is defined in RFC 951 and RFC 1084.