IPMSG飛鴿傳書3 協議翻譯

2021-06-19 16:40:19 字數 2152 閱讀 1345



最近看到一些朋友在編寫網路程式是遇到一些問題,故把以前做ipmsg時翻譯的文件貼過來,希望對網路程式設計新手有所幫助,在尋找程式設計專案的同學們也可參照此文件寫出自己的ipmsg。

本文只包含其中幾個比較重要的命令以及執行機制的中文翻譯,更詳細的內容請參照文後的ipmsg 協議英文文件

宣告:下述協議內容略去了一些在編寫程式過程中沒有用到協議內容,最初的ipmsg協議是用日文寫的,下面協議內容由本人(cugb_cat)翻譯自mr.kanazawa的英文文件。本翻譯文件可任意傳播和使用。

ip信使傳輸協議(第9版草案)       1996/02/21

2013/01/14 修訂

h.shirouzu

[email protected]

飛鴿傳書官方** 

關於ip信使:

ip信使使用tcp/udp協議提供收發訊息及檔案(目錄)。

特性:

執行機制介紹:

使用tcp/udp埠(預設埠為2425),訊息的收發使用udp協議,檔案(資料夾)的收發使用tcp協議。

1、 命令字:

1) 基本命令字(32位命令字的低8位)

ipmsg_nooperation     不進行任何操作

ipmsg_br_entry     使用者上線

ipmsg_br_exit       使用者退出

ipmsg_sendmsg       傳送訊息

ipmsg_recvmsg       通報收到訊息

ipmsg_getfiledata     請求通過tcp傳輸檔案

ipmsg_releasefiles 停止接收檔案

ipmsg_getdirfiles     請求傳輸資料夾

2) 選項位(32位命令字的高24位)

ipmsg_sendcheckopt 傳送檢查(需要對方返回確認資訊)

ipmsg_fileattachopt 傳送檔案選項

3) 附件型別命令(檔案型別命令字的低8位)

ipmsg_file_regular 普通檔案

ipmsg_file_dir     目錄檔案

ipmsg_file_retparent 返回上一級目錄

2、 資料報格式(使用字串):

1) 資料報格式(版本1的格式)

版本號(1):包編號:傳送者姓名:傳送者主機名:命令字:附加資訊

2) 舉例如下

「1:100:shirouzu:jupiter:32:hello」

3、 資料報處理總述:

1) 使用者識別

2) 收發訊息

使用ipmsg_sendmsg命令傳送訊息,訊息內容新增在附加資訊中;在接收訊息時,如果對方要求回信確認(ipmsg_sendcheckopt位開啟),則需傳送ipmsg_recvmsg命令並將對方傳送的資料報的編號放在附加資訊中一同傳送至傳送訊息方

3) 附加檔案的擴充(新增於第9版)

帶有ipmsg_fileattachopt位的ipmsg_sendmsg命令可用來傳輸檔案,檔案屬性及內容新增在附加資訊中,檔案內容新增在訊息內容後並以』\0』與之分隔開。

(檔案大小、最後修改時間和檔案屬性為十六進製制數,如果檔名中包含』:』則使用「::」代替)。

接收端開始接收檔案時,請求傳輸檔案命令ipmsg_getfiledata將傳送到傳送端的tcp埠(和udp的傳送埠相同),並將傳送端傳送的包編號:檔案序號:偏移量(全為十六進製制格式)寫到附加資訊區一同傳送,檔案傳送端接收到該請求資訊並進行校驗正確後即開始傳送檔案(不使用任何格式,亦不進行加密)。

當接收端接收到目錄檔案時,將傳送附加資訊區為傳送端傳送的包編號:檔案序號:偏移量(全為十六進製制格式)的 ipmsg_getdirfiles命令,以用來請求傳輸目錄檔案;傳送端則將頭首席資訊官度:檔名:檔案大小:檔案屬性:檔案內容新增到附加資訊區(除了檔名和檔案內容外,其餘皆為十六進製制),頭首席資訊官度是從頭首席資訊官度開始到檔案內容前的『:』分割符為止的字元個數。

當檔案屬性為ipmsg_file_dir時,ipmsg能夠自動識別其為目錄,下乙個檔案的資料在該目錄之後。

當檔案屬性為ipmsg_file_retparent時,ipmsg識別其動作為返回上一級目錄,在這種情況下,檔名為『.』其屬性為當前目錄的值。 

ipmsg飛鴿傳書3——協議翻譯

IPMSG 飛鴿傳書 協議翻譯

最近看到一些朋友在編寫網路程式是遇到一些問題,故把以前做ipmsg時翻譯的文件貼過來,希望對網路程式設計新手有所幫助,在尋找程式設計專案的同學們也可參照此文件寫出自己的ipmsg。本文只包含其中幾個比較重要的命令以及執行機制的中文翻譯,更詳細的內容請參照文後的ipmsg 協議英文文件 宣告 下述協議...

IPMsg飛鴿傳書網路協議解析手記

相信很多人都使用過飛鴿傳書,這個小工具在區域網傳輸資料高效而便捷,自己在大二的時候就想看看飛鴿傳書的原始碼,但那時候自己的水平有限,這幾天有機會重寫飛鴿傳書,也對ipmsg的網路協議做了深入的研究,這裡也要感謝ipmsg的作者公開源 ipmsg可以用於收發訊息和檔案 夾 使用udp協議收發訊息使用t...

飛鴿傳書管理軟體 「ipmsg」

隨著網路技術的飛速發展和生產的日益專業化 社會化,人類社會逐步進入了資訊經濟時代。在資訊經濟時代,人們的生產 生活發生了巨大變化,企業在生產 流通freeeim 飛鴿傳書 應用虛擬化系統以及管理等方面也相應的發生了一系列變化,飛鴿傳書管理領域也不例外。在傳書方面 傳統的傳書工作需要耗費大量的人力 物...