Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Сети > Програмный выбор сетевого подключения. |
Автор: creo 15.5.2005, 12:51 |
Задача: Есть 2(3,4...N) сетевых подключений (модемных), которые уже подключены. Необходимо програмно выбрать подключение, по которому будет происходить передача данных. Вопрос: возможен ли такой програмный выбор? Заранее благодарен за ответ. |
Автор: En_t_end 15.5.2005, 16:24 |
Что-то я не понял... надо выбрать наиболее подходящий канал связи ? Если так, то делаешь перебор в каждой итерации которого посылаешь пакет и смотришь за сколько он возвращается, естественно выбираешь тот канал, где быстрей. |
Автор: creo 15.5.2005, 21:00 |
Необходимо реализовать параллельную передачу данных по нескольким каналам. |
Автор: En_t_end 16.5.2005, 06:44 |
Ну дык ![]() Делишь файл aka данные на фикс. части в зависимости от кол-ва модемных соединений в определенных процентах от кол-ва файла и отправляешь через каналы связи... вот в принципе и все. |
Автор: creo 16.5.2005, 07:53 |
Именно это я и собираюсь реализовать. Для этого необходимо сказать проге: эти данные я буду передавать по этому модемному соединению, эти - по второму, а вот эти - по третьему. Поскольку надо реализовать параллельную передачу, то она для каждого соединения будет происходить в своём потоке. Эти N потоков запускаются параллельно, поэтому вариант открыл одно, передал, закрыл, открыл другое,..и т.д. - не пройдёт. Я спрашиваю, как програмно (если можно - простейший пример ) реализовать этот алгоритм. При использовании сокетов конкретное соединение не указывается. |
Автор: DENNN 16.5.2005, 09:53 |
En_t_end Не путай человека. В виндах пакет всегда уходит по пути, прописанному в таблице маршрутизации. Если пути нет, то по дефольному, который тоже всегда один. Можно ли под виндой сделать нормальный load balancing - х.з. Тем более х.з, можно ли такое сделать под рабочей станцией, а не сервером. Автор, ищи по словам trunking, load balancing, policy routing |
Автор: Secandr 18.5.2005, 11:44 |
Можно сделать так: для разных хостов прописать роутинг через то или иное направление и отправлять данные. Винда уже сама пошлёт их в нужный интерфейс. |