2015-04-02 46 views
0

那麼我正在處理一個tcp套接字協議,我曾經說過,我將不得不按照以下格式發送數據頭。tcp套接字數據頭混淆

<MessageID=100,DataLen=16000,Checksum=0923> 

因此,標頭長度將是48bytes,這是固定的。這裏MessageID是要發送的消息標識符,DataLen是實際數據大小(不包括頭大小),Checksum是發送數據的校驗和。

這是一個合適的方式來建立一個tcp頭?通過這種方式,我將不得不使用過多的字符串操作來構建它,並且需要在接收端解析它時執行相同的需求。

我可以向前移動到固定大小的標題,如12bytes,即三個整數值表示相同。還是有更好的方法?

回答

0

我肯定會問這是什麼意思,該頭格式。他們可能不希望你用純文本打包標題。這是對帶寬和CPU性能的浪費。而且,代碼將更加複雜。它在我看來你有一個8位消息ID,16位數據長度和16位校驗和。處理這個問題的最好方法是一個固定的五個字節的頭文件。