Конференция "Сети" » Как переслать огромный файл по ТСП/ИП от 100 Мб- 4 Гб. [D6, D7, Win2k, WinXP]
 
  • Anatoly Podgoretsky © (23.09.08 14:50) [20]
    Хорошо послал, очено далеко.
  • Eraser © (25.09.08 16:09) [21]
    > [0] denissoft   (17.09.08 19:11)

    как тут и писали - точно так же как и 1 КБ.
    только размер файла лучше передавать в виде int64
  • Rouse_ © (26.09.08 11:07) [22]

    > только размер файла лучше передавать в виде int64

    Размер файла лучше вообще не передавать, а то всегда найдется умник, который подключится к твоему серверу и отправит туда $FFFFFFFF
  • Городской Шаман (27.09.08 05:19) [23]

    > Rouse_ ©   (26.09.08 11:07) [22]
    >
    >
    > > только размер файла лучше передавать в виде int64
    >
    > Размер файла лучше вообще не передавать, а то всегда найдется
    > умник, который подключится к твоему серверу и отправит туда
    > $FFFFFFFF


    точно-точно лучше передавать в каждом уникальный идентификатор открытого файла(выдается на сервере) смещение в файле и размер текущего пакета + хешированный размер пакета(а то всегда найдется умник, который подключится к твоему серверу и отправит туда $FFFFFFFF) + сигнатура + контрольная сумма

    Ну и проверять чтобы размер пакета не был более, скажем 32Кб + таймаут между пакетами в 30-120 сек(если превышение, то разрыв соединения).
  • Eraser © (30.09.08 16:27) [24]
    > [22] Rouse_ ©   (26.09.08 11:07)

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

    то что умник передаст $FFFFFFFF это уже проблемы умника и системы безопасности. тот, кто не имеет доступа до момента, когда передается размер файла не дойдет )
  • Rouse_ © (30.09.08 17:01) [25]

    > точно-точно лучше передавать в каждом уникальный идентификатор
    > открытого файла(выдается на сервере) смещение в файле и
    > размер текущего пакета + хешированный размер пакета(а то
    > всегда найдется умник, который подключится к твоему серверу
    > и отправит туда $FFFFFFFF) + сигнатура + контрольная сумма

    зачем усложнять? Достаточно кидать все в BASE64 и границы пакетов обрамлять любым символом не входящим в BASE64-последовательность :)
  • Сергей М. © (30.09.08 17:31) [26]
    Эк вас в дебри понесла нелегкая)
    А автор поди схлопотал WSAEWOULDBLOCK и его постиг творческий ступор)
  • brother © (02.10.08 04:31) [27]
  • Городской Шаман (02.10.08 19:23) [28]
    А вообще самый простой способ только для передачи файлов - поднять TFTP из Indy и пересылать через него.
 
Конференция "Сети" » Как переслать огромный файл по ТСП/ИП от 100 Мб- 4 Гб. [D6, D7, Win2k, WinXP]
Есть новые Нет новых   [134432   +19][b:0][p:0]