tftpd позволяет соединения, но приводит к таймауту передачи файла

Я думаю, что Вы путаете функциональность прямого доступа к памяти (DMA, аппаратная функция) с функциями, обеспеченными Диспетчером кэша в Windows.

DMA является методом, чтобы позволить устройствам IO непосредственно получать доступ к системной памяти без вмешательства ЦП. Приложения не используют DMA - драйверы устройств делают. Приложения далеко удалены из процесса DMA.

Чтение приложений / запросы записи проходит через множество слоев на пути к устройству IO. Диспетчер кэша собирается обработать объем кэширования запросов через системную память. Драйверы устройств самих устройств IO могут также реализовать кэширование.

Если бы Ваше приложение не взаимодействует хорошо с Диспетчером кэша, но делает с псевдодиском (который Вы определили бы путем сравнительного тестирования), затем, любой ценой, используйте псевдодиск. Мне существует мало точки об академическом танце вокруг субъективной "пользы" различных технологий. С точки зрения производственного развертывания ключ к тому, существует ли "точка" к использованию данной технологии, должен быть основан на сравнительном тесте с как близко к реальным условиям, поскольку можно моделировать. При внесении изменений в ОС, стопку драйвера, код приложения, и т.д., необходимо восстановить сравнительные тесты, так как старые предположения больше не могут сохраняться.

7
задан 28 May 2014 в 16:29
5 ответов

Похоже, вы запускаете tftpd-hpa из xinetd и как отдельную службу одновременно. Выберите один и отключите другой.

Например, установите disable = yes в /etc/xinetd.d/tftp и перезапустите xinetd. Затем перезапустите автономную службу service tftpd-hpa restart и попробуйте установить соединение еще раз.

2
ответ дан 2 December 2019 в 23:47

1) удалить / переустановить tftpd-hpa

2) добавить в / etc / default / tftpd-hpa

RUN_DAEMON="yes"
0
ответ дан 2 December 2019 в 23:47

Может понадобиться пробить дыру в брандмауэре. С шага 4 из http://www.thelinuxdaily.com/2010/02/guide-on-tftp-server-setup-in-fedora/:

Вставьте следующую строку перед строкой "КОММИТ" из /etc/sysconfig/iptables, а затем перезапустить службу с 'service iptables restart':

-A INPUT -m state --state NEW -m udp -p udp --dport 69 -j ACCEPT

0
ответ дан 2 December 2019 в 23:47

См. этот ответ .

Мне пришлось отредактировать / etc / default / tftpd-hpa и установить IP-адрес в TFTP_ADDRESS = переменная.

Это было в Debian Jessie, но может быть таким же в Ubuntu.

0
ответ дан 2 December 2019 в 23:47

Настройка TFTP_ADDRESS = "0.0.0.0:69" у меня не сработала, по крайней мере, для обоих интерфейсов. Настройка TFTP_ADDRESS = ": 69" выполнила свою работу

1
ответ дан 2 December 2019 в 23:47

Теги

Похожие вопросы