2010-02-08 67 views
1

我有一個簡單的文件共享應用程序。 用戶通過大小爲1024 KB的數據包相互發送數據。 一切正常,但我接下來需要的是每個數據包的標題。 我並不完全相信我理解標題的概念,但我相信它應該包含以下信息:具有文件的用戶的用戶名,文件的大小,文件的名稱,以便用戶下載文件可以確保他正在下載正確的文件。用Java爲我的應用程序創建數據包標頭

任何示例或鏈接都會受到歡迎,因爲這是我第一次處理這種類型的事情。

回答

1

標題的目的是傳達關於標題後面的包的信息。爲了爭辯,考慮一個文件傳輸應用程序,例如你正在開發的應用程序,例如一個文件可以同時從多個用戶傳輸到需要該文件的用戶。如果每個發送者發送一個包含文件一部分的數據包,則需要某種形式的信息,例如序列號或文件中的偏移量,以便接收者能夠將這些數據放在一起實際文件。

爲了讓自己更容易,您可以看看Google Protocol buffers,它允許您指定組成消息的字段以及序列化和反序列化它們。

例如,您可以在TCP protocol的標題中找到要放入標題的示例,儘管您不應該認爲需要該標題或類似內容中的所有內容。查看其他協議是學習的好方法。