Network Programming

Network programming is one field which everybody uses but very few people really know in depth. Our IT Hare did write a software which processes billions of network packets per day; moreover, they’ve done it in a very robust and efficient manner. And last but not least, they’re ready to share their experience :-)

Five Myths used in "Golang vs Node.js" debate

February 25, 2020 by “No Bugs” Bunny

Quote:

Performance-wise, Golang is closer to Node.js than to C/C++

Another Quote:

concurrency (leave alone efficient concurrency) is never easy

Filed under: On.ProgrammingNetwork ProgrammingProgramming Languages

Read more

(Almost-)Zero-Additional-Latency UDP-over-TCP

March 21, 2017 by “No Bugs” Bunny

UDP over TCP

Quote:

we realize that for some of the Clients – UDP just doesn’t work because of some weird firewall between Client and Server

Another Quote:

there is nothing to block us (so head-of-line blocking doesn’t apply)

Filed under: Book: D&D of MOGs1st beta of Vol. IV-VIOn.ProgrammingNetwork Programming

Read more

TCP Peculiarities as Applied to Games, Part II

March 14, 2017 by “No Bugs” Bunny

Nagle's Algorithm

Quote:

Nagle’s algorithm aims to deal with those [CENSORED] developers who’re trying to send data over TCP in really small chunks (like 1 byte each time)

Another Quote:

it seems that “proportional rate reduction” (PRR, reportedly used by Linux kernels by default starting from 3.2) performs for gaming purposes a little bit better than the alternatives

Filed under: Book: D&D of MOGs1st beta of Vol. IV-VIOn.ProgrammingNetwork Programming

Read more

TCP Peculiarities for Games, part 1

March 7, 2017 by “No Bugs” Bunny

Exponential Back-Off

Quote:

the best we can hope when using a single TCP connection over 5%-loss channel – is having 1.5-second “lag spike” every 5 or so minutes, and a 3-second “lag spike” every 2 hours.

Another Quote:

we may already have the-information-we-need on the receiving host – but this information is hidden from us by layers of abstraction on receiving side

Filed under: Book: D&D of MOGs1st beta of Vol. IV-VIOn.ProgrammingNetwork Programming

Read more