Вопросы по теме 'network-programming'
NetworkStream.Write немедленно возвращается — как я могу узнать, когда он закончил отправку данных?
Несмотря на документацию, NetworkStream.Write не ожидает отправки данных. Вместо этого он ждет, пока данные не будут скопированы в буфер, а затем возвращается. Этот буфер передается в фоновом режиме.
Это код, который у меня есть на данный момент....
12476 просмотров
schedule
19.08.2023
Что вы используете, когда вам нужен надежный UDP?
Если у вас есть ситуация, когда TCP-соединение потенциально слишком медленное, а UDP-соединение потенциально слишком ненадежно, что вы используете? Существуют различные стандартные надежные протоколы UDP. Какой у вас опыт работы с ними?
Обсудите,...
68757 просмотров
schedule
29.07.2022
Шаблоны для многопоточного сетевого сервера в C#
Существуют ли какие-либо шаблоны/шаблоны/руководства, которым я могу следовать при разработке многопоточного сервера? Я не могу найти ничего ужасно полезного в Интернете через мои поиски в Google.
Моя программа запустит поток для прослушивания...
9918 просмотров
schedule
12.04.2023
Почему записи SocketChannel всегда завершаются на полную сумму даже на неблокирующих сокетах?
Используя Sun Java VM 1.5 или 1.6 в Windows, я подключаю неблокирующий сокет. Затем я заполняю ByteBuffer сообщением для вывода и пытаюсь write() передать SocketChannel.
Я ожидаю, что запись будет завершена только частично, если объем записи...
3021 просмотров
schedule
30.08.2022
Как вы ограничиваете пропускную способность соединения сокета в C?
Я пишу клиент-серверное приложение, используя сокеты BSD. Он должен работать в фоновом режиме, непрерывно передавая данные, но не может использовать пропускную способность сетевого интерфейса при обычном использовании. В зависимости от скорости...
15603 просмотров
schedule
20.10.2022
Ресурсы Java RMI
В настоящее время я занимаюсь проектом, который включает широкое использование Java RMI, и мне было интересно, знает ли кто-нибудь о каких-либо хороших ресурсах по этому поводу.
Проблема, с которой я сталкиваюсь с материалом, который я нахожу в...
3913 просмотров
schedule
07.05.2023
Ruby — посмотреть, открыт ли порт
Мне нужен быстрый способ узнать, открыт ли данный порт в Ruby. Я в настоящее время возиться с этим:
require 'socket'
def is_port_open?(ip, port)
begin
TCPSocket.new(ip, port)
rescue Errno::ECONNREFUSED
return false
end
return...
28014 просмотров
schedule
13.04.2024
Написание сервера на основе сокетов на Python, рекомендуемые стратегии?
Недавно я читал этот документ , в котором перечислены некоторые стратегии, которые можно использовать для реализации сервера сокетов. . А именно они:
Обслуживайте множество клиентов с каждым потоком и используйте неблокирующий ввод-вывод и...
6765 просмотров
schedule
01.11.2022
Подходит ли SCTP для одноранговых приложений?
Я рассматриваю возможность использования SCTP вместо TCP для p2p-приложения, написанного на C. Стоит ли мне это делать? ? Также как скорость SCTP соотносится со скоростью TCP?
РЕДАКТИРОВАТЬ: я обнаружил, что SCTP можно туннелировать через UDP...
2453 просмотров
schedule
18.05.2023
Определить IP-адрес принтера в C#
Я хотел бы определить IP-адрес принтера с помощью С# (.NET 2.0). У меня есть только общее имя принтера, установленное в ОС Windows, в формате \\PC Name\Printer Name . Принтер является сетевым принтером и имеет другой IP-адрес, чем ПК. У...
22686 просмотров
schedule
03.06.2022
Двойной системный вызов write () вызывает резкое замедление работы сети
В частично распределенном сетевом приложении, над которым я работаю на C ++ в Linux, у меня есть абстракция передачи сообщений, которая отправляет буфер по сети. Буфер отправляется в два этапа: сначала отправляется 4-байтовое целое число, содержащее...
505 просмотров
schedule
22.05.2022
Что такое BSD (или портативный) способ получить байт ToS (например, IP_RECVTOS из Linux)?
Каков правильный (портативный, стабильный) способ получить байт ToS полученного пакета? Я выполняю UDP с помощью recvmsg(), и в Linux я могу получить ToS, если я setockopt() IP_RECVTOS/IPV6_RECVTCLASS, но IP_RECVTOS, похоже, недоступен в моих...
2644 просмотров
schedule
07.06.2022
Как справиться с буферизацией данных, считанных из сети?
При чтении данных по сети вы указываете буфер для приема данных:
byte[] b = new byte[4096];
socket.Receive(b);
Теперь моя первая мысль, конечно же, повторно использовать приемный буфер, объявив его как переменную-член класса. Моя следующая...
2169 просмотров
schedule
15.04.2022
Абстракция сетевого программирования, декомпозиция
У меня проблема в следующем:
Серверный процесс 1
Постоянно отправляет обновления, которые происходят в хранилище данных
Серверный процесс 2
Клиенты связываются с сервером, который запрашивает хранилище данных и возвращает результат....
286 просмотров
schedule
28.11.2023
Кодирование, декодирование целого числа в массив символов
Обратите внимание, что это не домашнее задание, и я искал перед тем, как начать эту новую ветку. Я получил Сохранить int в массиве символов?
Я искал ответ, но не получил удовлетворительного ответа в приведенной выше теме.
Вот мое требование:...
8840 просмотров
schedule
05.06.2024
Документация Boost.Asio отсутствует. Что означают эти ошибки?
Я борюсь с двумя ошибками с Boost.Asio.
Первый возникает, когда я пытаюсь получить данные в сокете:
char reply[1024];
boost::system::error_code error;
size_t reply_length = s.receive(boost::asio::buffer(reply, 1024), 0, error);
if (error) cout...
1748 просмотров
schedule
13.05.2023
Оптимизация сервера локальной сети для игры
Я сетевой программист в проекте школьной игры. Мы хотим иметь до 16 игроков одновременно в локальной сети. Я использую модель «сервер-клиент» и создаю новый поток для каждого присоединяющегося клиента. Однако много процессорного времени тратится...
600 просмотров
schedule
16.04.2022
Неблокирующий сокет в Windows не возвращается после вызова send()
Я надеюсь, что кто-нибудь сможет объяснить ситуацию — любую ситуацию, — в которой неблокирующий сокет Windows не вернется сразу же после использования для него функции send(). На других платформах мой код работает так, как задумано, так что это...
3408 просмотров
schedule
20.11.2022
Использование recvfrom () с необработанными сокетами: общие сомнения
Я создал необработанный сокет, который принимает все пакеты IPv4 с уровня канала данных (с удаленным заголовком уровня канала данных). А для чтения пакетов использую recvfrom .
Я сомневаюсь: предположим, что из-за некоторого планирования,...
2213 просмотров
schedule
04.04.2022
Обертка, совместимая с сокетом BSD, вокруг Winsock?
Я пытаюсь перенести приложение Linux на Windows. Приложение не слишком сложное, в нем используется достаточно стандартный код с небольшим количеством внешних зависимостей. Основными зависимостями являются libelf (которая отлично компилируется под...
2224 просмотров
schedule
11.11.2022