Существует определенный сервер ubuntu 10.04, где, если я нахожу ssh файл на нем с любого сервера, который находится за пределами офиса, где находится этот сервер (что означает, что любое использование scp-ing на этом сервере через LAN изнутри этого сервера всегда работает для по какой-то причине), то scp-ing не работает для любого файла размером более 2112 кБ и застревает в 2112 кБ. Так
scp -vvv /home/attila-szeremi/aszeremi.tar.gz [email protected]:~/aszeremi.tar.gz
динамически показывает что-то вроде 1% 2112KB 909.2KB/s - stalled -
в конце, где KB/s становится ниже и ниже.
Кто-нибудь знает, что может быть причиной этого и как я могу это исправить?
То, что я пробовал до сих пор:
Кажется, я нашел исправление. Мне нужно было установить значение mtu карты LAN на 1492:
# ifconfig eth0 mtu 1492
Единственный способ избавиться от этой проблемы - отключить TCP SACK:
$ sudo sysctl -w net.ipv4.tcp_sack=0
В новых Linux-системах команда ifconfig может быть заменена на ip
Команда для установки mtu становится:
# ip link set dev eth0 mtu 1492
Я застрял с тем же именем Mac OS X и @dav.garcia answer сделал это для меня с небольшим изменением:
$ sudo sysctl -w net.inet.tcp.sack=0
Я видел эту проблему. Ни одно из приведенных выше предложений не помогло мне, но они вернули меня на правильный путь. Я стоял за брандмауэром с установкой MTU, установленной на 1300. Установка MTU на моей локальной сети действительно низка (576, несколько случайная) заставила мои пакеты перестать удаляться.
$ sudo ifconfig eno1 mtu 576
Мне пришлось делать это на каждом из моих Linux-клиентов. По какой-то причине у машины Windows в той же подсети не было проблем.
rsync
и проблема ушла. Не решение, а достойный обходной путь в моем случае.