FTP

こちらの事業所でFTPサーバーをたてているのだが、東京本社からのアップロードがどうもうまくいっていない。ダウンロードは全く問題ないしすべてのファイルが駄目というわけではない。また大阪支社からは問題なく使えているようなのでサーバーが悪いというわけではなさそう。最初の頃は東京で使用しているhubが怪しいと言われていたが冤罪と判明、最近は接続しているプロバイダがまずいのではという説が有力であった。別のプロバイダとの契約を追加し試してみたが、残念ながら不具合は解消されず非常に困った状態。一方、webdav系のあるツールを使用して試してみたらアップロードできてしまったという報告が入った。ということはネットワークが根本的な問題ではないということだろうか?
FTPというプロトコルはとても古いプロトコルでありながら(古いから?)Control用とData用の二つのコネクションを使用するある意味高度な形態をとっており、ファイアーウォール側の設定は他のプロトコルとくらべてもかなり複雑になる。ではあるけれども、データの送信自体は確立したデータコネクション上でデータをそのまま送信するだけ(Binaryモードの場合)のはずなのでこれが途中で何故ハングしてしまう(ことがある)のかよくわからない。指定ファイルを送信するケースを自作して試してもらったのだがやはり途中でハングするらしい。一つ考えられるのはデータ送信中にサーバー側がコントロールコネクションを通して何かのレスポンスを返してきてそれに対するクライアント側の何らかの反応を待っていることだが、どうもそのような形態は見当たらない。でもとりあえず試してみる価値はあるかな?