Этого не могут ни другие многие программы (всевозможные прокси, керио...). Тут два варианта:
1) в случае нат или прокси сервера: трафик обычно делится по количеству сессий/портов (т.е. открылось на NAT 30 портов, он трафик на 30 частей разделил, несмотря на то, что 29 портов от хоста1)
2)Если в режиме моста, т.е. пакеты только маршрутизируются, то маршрутизатор (когда пакетов приходит больше, чем он может протолкнуть)ставит пакеты в буфер в очередь. И вот если одна программа нагенерила 85 пакетов в интервал времени (по той же причине что начинает бомбить udp пакетами или открывать по куче сессий и неважно что пакеты уйдут в никуда) а вторая допустим 15 (из-за того что допустим качается фильм и там она после отправки некоего количества пакетов ждёт подтверждения их доставки) то и в очереди окажутся 85 процентов пакетов торрента и 15 другой проги.
домовые сети (да и вообще остальные) выкручиваются тем, что каждому пользователю отрезается кусок канала и не больше. Если хочется чтоб когда другие компы отключены юзался весь канал, а когда включены, то часть, то тут уже нужно решать всё или на уровне QoS или ставить динамический шейпер (вроде в SQUID есть такое и в траффик инспекторе обещали. В керио тож есть но не работает)
кстати на днях знакомый на acorp модеме (если ничо не путаю в названии) решал такую же задачу. После перепрошивки модема появилась там вроде опция динамического шейпера, вроде там измерялся трафик от хостов, если кто-то в интервал времени генерил больше определённого, то его канал временно урезался до значения. Я завтра уточню получилось ему сделать или нет, для меня софтварное решение этого вопроса под виндой - задача №1.
p.s. кстати всё-таки неплохо было бы разобраться с QoS, т.к. удобнее делить трафик не тольк по хостам. но и по типам пакетов. При qos на маршрутизаторе создаётся несколько очередей (как в супермаркете, одна очередь для тех, кто полные тележки набрал, другая для тех, кто за сигаретами забежал и она короче). Мне этот вариант больше нравится да и проги его используют, тот же скайп.