Actually, many MTAs.
Divided in small teams (1-3 people), each MTA would ultimately be pointed to the next MTA, and the teacher would use telnet to send a message over SMTP to the first one, the goal being that the message had to reach the last one in the chain.
Grades were attributed based on whether a team's implementation failed, crashed, mangled the message and whatnot, and also as a whole to promote team spirit all in good faith and sports.
It was quite fun.
(pretty confident we did HTTP things too although I have no actual recollection of it)
I'm not sure how various schools/countries do ICT education in comparison, but I at least heard that friends of mine who stayed in grammar school past age 14 were exposed to Borland Delphi at some point.
Every time the topic "tiny webserver in C" come up on HN, I always thought that the people who never did something like this were perhaps self-taught (similar to "write a tiny shell in C" which was also a standard exercise in our universities operating systems course). I have a hard time trying to imagine how one could possibly teach a college or university level course on networking without doing exercises like that.