c = rand() % 2;у тебя тут ошибка, c у тебя равно символу с кодом либо 0 либо 1,if (u == c)c = rand() % 2+'0';И как по одному лучу света можно связываться с сотнями роутерами?
Как из нескольких оптоволокон от разных домов делается снова один, который потом идёт в такую же коробочку и заходит в неё вместе с другими оптоволокнами от следующих домов?