logoalt Hacker News

dijityesterday at 8:48 PM1 replyview on HN

We used TCP for The Division, this was a major mistake and I don't think it was something people should repeat.

For example, if you have TCP_NODELAY and a few thousand players, you'll be swimming in about 1.2M packets per second pretty quickly.

This is enough to completely crush any stateful firewalls (UDP would pass through because no need to check state), so we had to do ACLs in network hardware instead, and append a magic number so that we could prevent flooding instead.

Another thing we found was that Windows networking activity only happens on Core0 (Windows 2012 R2); and that at 1.2M PPS: the driver crashes.

Logging in to a Windows machine which is AD connected when its network interface is dead is not ideal.

So, yeah, avoid TCP.


Replies

keedatoday at 12:32 AM

Makes sense, and that was the surprising thing about WoW using TCP. I wonder if Blizzard chose to put in all that extra effort to make TCP work because they encountered enough crappy home routers out there that mangled any non-TCP traffic...