The client receives one or more Offers and picks one. It broadcasts a Request saying "I want the IP from server X."
Why broadcast? Two reasons. First, the client still has no IP address. Second, if multiple servers sent Offers, the broadcast tells the others "thanks, but I picked someone else." Those servers return their offered addresses to the pool.
The Request includes the chosen server's identifier and the offered IP address.