Cassio is the paragon of White European society. He is the man Othello secretly, subconsciously, unconsciously wishes he could be. Even the white Iago is jealous of him.
One wonders why Othello promotes Cassio to his lieutenant: why would Othello want to be reminded of what he is not on a daily basis? Why would Othello pass over Iago, a veteran soldier, for the younger, untested Cassio? Plus, Cassio is a beaurocrat, a number cruncher. Why would Othello promote a guy with a "desk job" to such a high rank on the front lines of a war with the Turks?
The answers are simple: Othello has been conditioned by the Anglo-centric color code. The Venetian society has conditioned Othello to be ashamed of his blackness, to believe that "white is right; white is might." Here's some notes from a sociology professor on the color code:
•Western civilization transfers symbolic values associated with “light and dark”—e. g., good & evil, rational / irrational—to people of light or dark complexions, with huge implications for power, validity, sexuality, etc.
•Skin color matters as a marker of identity and difference in race, class...
Cassio is a foil for the older black general, especially when it comes to Desdemona's affections. Remember, Othello is twice the age of Cassio AND Desdemona; he's closer to Brabantio's age. Iago uses Cassio as the perfect man not only to make Othello jealous, but also to make Desdemona look like she is flirting with him. Desdemona is even enamored with him:
Cassio is also a man of reputation. He says it is a part of him, the eternal part of him: his soul. Cassio gets Othello to believe this as well. Othello fears that his reputation will be forever stained by Desdemona's infidelity. The worst name to be called among men in Shakespeare's days was a "cuckold." A cuckoo is a female bird who lays her eggs in another's nest. So to be called a cuckold means Othello cannot control his wife's promiscuity. He kills her as revenge for staining his reputation.