2 台の UNIX マシン間で任意のファイルを送信するために UDP 接続を使用する必要があるプロジェクトに取り組んでいます。このプロジェクトの主な要点は、データをバイト配列にエンコードし、2 台のマシン間で送信することです。私の最初の計画は、バイト配列を取得し、それらからリストを作成し、pickle でシリアル化して送信することでした。しかし、今日インストラクターから、リストを使用して pickle でシリアル化することは、問題の解決策として受け入れられるものではないと言われました。彼の言葉を引用すると:
「配布資料で定義されたプロトコルに従うように、整数、文字列、およびファイルオブジェクトを自分でエンコードおよびデコードする必要があります。」[このプロトコルは、バイト配列からセグメントを作成することを指します。各セグメントは、ファイル サイズの 4 バイト配列、ファイル名の 2 バイト配列、ID フラグの 1 バイト配列、および「ペイロード」バイト配列を保持します。送信内容によって長さが異なります。]
この時点で、私は本当にそれで行くかどうか確信が持てません。他のマシンに送信する必要があるバイト配列がありますが、そうする最初の 2 つのアイデアは許可されていません。バイト配列と UDP 接続 (どちらも個別にテスト済み) を作成できますが、それらを送信するとつまずきます。私のPythonの問題に対する良い解決策はありますか?