Port numbers 1 to 1024 are used for specific services... why does the BOOTP Client use a port number i.e. 68 in this rangefor receiving the reply from a BOOTP server...
Since the server in BOOTP is broadcasting, it is not targeting a particular device with a unicast transmission. This means it cannot safely send to an ephemeral port number: some other device on the network may have selected the same ephemeral port number for some other transaction and may mistake the BOOTP server's response as being intended for itself. To avoid this problem, another well-known port number is used just for BOOTP clients: UDP port 68. Clients listen on this port for broadcast or unicast transmissions, while of course devices that have not sent a BOOTP request will ignore it.