It's simple math, really. Tournament draws like the one you linked to in your question must have a total number of slots that are a power/exponent of 2. So numbers like 16, 32, 64, 128, 256, 512, etc. The total number of players included in the draw however, can be any number. If you look above the draw bracket you'll see this year Indian Wells has 96 singles players and 32 doubles teams.
In order to accommodate 96 singles players, you have to have at least 96 places in the draw - but the number still has to be a power of 2 - so you get a draw with 128 places in it (because 64 isn't enough). But with a draw size of 128 and only 96 players, you have a ragged number of first-round matchups. How do you resolve this issue?
Seeds and Byes.
Take that 128 (draw size) and subtract 96 (singles players) to get the number of seeds you need to apply. Each seed gets a first-round bye. After 32 first round matches that will leave exactly 64 players left (32 seeds + 32 first round winners) - so both first and second rounds will be comprised of 32 matches. The seeds are also used to determine how to distribute the players evenly into the draw spaces.
Professional tennis also does this with smaller tournaments (Indian Wells is a large tournament, almost the size of a major).
Let's say you have a draw size of 32 with 24 players entered. No problem. Apply seedings to the top 8 highest ranked players in the draw and give them a bye into the second round.
Not every tournament gives seeded players a bye, though. Some tournaments might have, say, a draw size of 64 with 56 players. In cases like this, they sometimes seed 16 players, but give only the top 8 seeds a bye. They would still seed an additional 8 players (for a total of 16) in order to somewhat-evenly distribute them throughout the draw, so that they don't end up with a first-round match between two highly seeded players.