Можно ли отправить файл с моего локального компьютера на локальный компьютер через сеть? (Предпочтительнее Linux)

Он должен использовать сеть, потому что моя цель - проверить скорость передачи. Я не использую два разных хоста, потому что у меня только один компьютер. Имеет ли этот тест смысл? (Или Linux будет умным и поймет, что может просто скопировать файл локально, потому что он один и тот же?)

2 ответа2

2

Что ж, сеть обычно состоит из двух или более узлов, а узел - это система, которая создает, маршрутизирует или завершает данные. Хотя у вас может быть коммутатор или маршрутизатор как часть вашей локальной сети, эти устройства сами не создают и не завершают (полезно) большое количество данных. Более того, хотя вы можете сделать Linux-систему членом нескольких сетей, по своей сути она становится напрямую подключенной к каждой отдельной сети, так что любая попытка установить сетевое соединение от одного сетевого адреса к другому сетевому адресу, который существует на том же хосте, будет По замыслу, ядро операционной системы должно быть перенаправлено обратно в себя, прежде чем оно попадет в NIC.

Есть способы обмануть систему, чтобы она не могла сказать, что она подключается обратно к себе, но эти приемы требуют участия удаленного маршрутизатора или системы для выполнения преобразования сетевых адресов, которое обычно не встречается в небольшом офисе. / сетевые устройства домашнего офиса, хотя linux может делать это, но не в одной системе, не сталкиваясь с внутренними проблемами, о которых я упоминал выше.

Однако главная проблема заключается в том, что ваше требование «проверить сеть» не определено. Какую сеть вы пытаетесь проверить? Это ваш сетевой код? Насколько мне известно, если ваш код будет отправлять и получать данные по адресу обратной связи (127.0.0.1) таким образом, который не связан с низкоуровневыми сетевыми атрибутами, такими как размер пакета или скорость потока и тому подобное, то он также будет работать между двумя отдельными хостами, которые имеют одинаковую кодовую базу. Однако, если сеть, которую вы хотите протестировать, включает в себя больше, чем код, тогда вам нужно определить, из чего именно состоит эта сеть, и для большинства предсказуемых сценариев должна быть вторая система (Linux-пакет, вероятно, наименее дорогой). ) для посредничества в дальнем конце тестовой сети.

0

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

Затем измените network настройки виртуального ящика, чтобы использовать bridged adapter , затем ему будет назначен IP-адрес с помощью dhcp (или вы можете назначить ему статический IP-адрес в своей сети независимо от способа работы с адресацией).

Затем настройте общую папку и затем передайте файлы.

Я думаю, что это должно привести к тому, что данные пойдут по «живописному маршруту». Вы можете использовать что-то вроде SCP для передачи и измерения скорости - или многие другие методы.

Это также может быть немного экстремальным решением для вашей установки :)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .