欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)保存、查詢及回放方法與流程

文檔序號:11929980閱讀:來源:國知局

技術(shù)特征:

1.一種LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)保存、查詢及回放方法,其特征在于,采用數(shù)據(jù)文件和索引文件的方式保存、查詢或回放數(shù)據(jù);在讀取基帶板原始數(shù)據(jù)的同時對每一個基帶板原始數(shù)據(jù)按基帶板卡獨(dú)立連續(xù)的編號,為每一個數(shù)據(jù)包創(chuàng)建索引節(jié)點(diǎn)信息并記錄其大小和存儲在數(shù)據(jù)文件中的位置;同時,將原始數(shù)據(jù)保存在數(shù)據(jù)文件中的對應(yīng)位置,將索引節(jié)點(diǎn)信息保存在索引文件中。

2.根據(jù)權(quán)利要求1所述LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)保存、查詢及回放方法,其特征在于,所述數(shù)據(jù)文件和索引文件采用不同的后綴名,所述數(shù)據(jù)文件的后綴名為.dat,用于保存基帶板原始數(shù)據(jù),采用cardid_datanum.dat方式命名,其中,cardid為不同的基帶板編號,datanum為數(shù)據(jù)段編號,從0開始,當(dāng)該文件長度超過1GBytes時datanum依自然數(shù)依次增加;所述索引文件后綴名為.idx文件,用于搜索基帶板原始數(shù)據(jù)在.dat文件中的偏移地址及長度,包括,基帶板原始數(shù)據(jù)查詢索引cardid_idxnum.idx文件和基帶板原始數(shù)據(jù)回放索引recordname_pbidxnum.idx文件;基帶板原始數(shù)據(jù)的存放結(jié)構(gòu)即為一個名稱為recordname的文件下存放有基帶板原始數(shù)據(jù)查詢索引文件cardid_idxnum.idx、基帶板原始數(shù)據(jù)回放索引文件recordname_pbidxnum.idx和基帶板原始數(shù)據(jù)保存文件cardid_datanum.dat。

其中:

recordname為主控板通過發(fā)送層二板存儲記錄名稱設(shè)定數(shù)據(jù)包請求層二板為該條記錄設(shè)置的名稱。

cardid_idxnum.idx為基帶板原始數(shù)據(jù)查詢索引文件,用于對基帶板原始數(shù)據(jù)查詢;文件中保存有編號為cardid的基帶板原始數(shù)據(jù)媒體接入控制層分組數(shù)據(jù)單元MAC PDU的索引,每一個文件包含10000000個索引節(jié)點(diǎn),可實(shí)現(xiàn)主控板查詢原始數(shù)據(jù)MAC PDU,主控板在查詢時只需提供sequence number,簡寫為seq_num;層二板可以根據(jù)record name和seq_num快速查找到指定序列號的原始數(shù)據(jù)MAC PDU位于cardid_datanum.dat的位置及長度。

recordname_pbidxnum.idx為基帶板原始數(shù)據(jù)回放索引文件,用于對基帶板原始數(shù)據(jù)進(jìn)行回放,在讀取到所有基帶板原始數(shù)據(jù)之后,將各基帶板原始數(shù)據(jù)的索引節(jié)點(diǎn)依次寫入到該文件,可實(shí)現(xiàn)基帶板原始數(shù)據(jù)回放,在回放時依次讀取索引節(jié)點(diǎn)中的每一個數(shù)據(jù)包的位置,并按照首次讀入數(shù)據(jù)的時序進(jìn)行回放。

cardid_datanum.dat為基帶板原始數(shù)據(jù)保存文件,cardid為基帶板卡編號,該文件最大為1GBytes。

3.根據(jù)權(quán)利要求2所述LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)保存、查詢及回放方法,其特征在于,每個.idx文件中存放若干個索引節(jié)點(diǎn)search_index_node數(shù)據(jù)結(jié)構(gòu),并且,

search_index_node數(shù)據(jù)結(jié)構(gòu)如下:

基帶板原始數(shù)據(jù)MAC PDU查詢請求數(shù)據(jù)子包載荷結(jié)構(gòu)如下:

基帶板原始數(shù)據(jù)MAC PDU回放請求數(shù)據(jù)子包載荷結(jié)構(gòu)如下:

并且,定義PKT_REQUEST_QUERY_MAC_PDU原始數(shù)據(jù)查詢子包為常量0x1400,PKT_REQUEST_PLAYBACK_MAC_PDU原始數(shù)據(jù)回放子包為常量0x1401,定義big_pkt_data,big_pkt_size變量,用以判斷解析結(jié)果。

4.根據(jù)權(quán)利要求3所述LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)保存、查詢及回放方法,其特征在于,所述LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)保存,包括以下步驟:

層二板接收到基帶板原始數(shù)據(jù)后均需要對其進(jìn)行保存,各基帶板原始數(shù)據(jù)的保存相互獨(dú)立且同時進(jìn)行,各基帶板原始數(shù)據(jù)的保存流程如下:

S11:基帶板原始數(shù)據(jù)輸入;

S12:層二板軟件接收基帶板原始數(shù)據(jù)并存入數(shù)據(jù)緩存區(qū);

S13:對每個原始數(shù)據(jù)包按照不同基帶板卡號進(jìn)行編號,計(jì)算數(shù)據(jù)包在文件中的結(jié)束位置和長度,填寫查詢索引節(jié)點(diǎn)數(shù)據(jù)結(jié)構(gòu)至索引緩沖區(qū);

S14:判斷緩沖區(qū)是否已滿,或者文件是否大于1GBytes,兩者滿足其一即執(zhí)行步驟S15,否則,執(zhí)行步驟S16;

S15:將數(shù)據(jù)緩存區(qū)的原始數(shù)據(jù)和查詢索引緩沖區(qū)的索引數(shù)據(jù)分別寫入cardid_datanum.dat文件中和cardid_idxnum.idx文件中;該基帶板原始數(shù)據(jù)和查詢索引數(shù)據(jù)保存完成,執(zhí)行步驟S16;

其中,所述cardid_datanum.dat文件用于保存基帶板的原始數(shù)據(jù),其中,cardid為不同的基帶板編號,datanum為數(shù)據(jù)段編號,從0開始,當(dāng)該文件長度超過1GBytes時datanum依自然數(shù)依次增加;

所述cardid_idxnum.idx為基帶板原始數(shù)據(jù)查詢索引文件,用于對基帶板原始數(shù)據(jù)查詢;文件中保存有編號為cardid的基帶板原始數(shù)據(jù)媒體接入控制層分組數(shù)據(jù)單元MAC PDU的索引,每一個文件包含10000000個索引節(jié)點(diǎn),可實(shí)現(xiàn)主控板查詢原始數(shù)據(jù)MAC PDU,主控板在查詢時只需提供sequence number,簡寫為seq_num;層二板可以根據(jù)record name和seq_num快速查找到指定序列號的原始數(shù)據(jù)MAC PDU位于cardid_datanum.dat的位置及長度;

S16:將各板卡的索引緩沖按板卡號依次連續(xù)的拷貝到另一塊索引緩沖區(qū),不進(jìn)行數(shù)據(jù)存儲;

S17:將回放索引緩沖區(qū)數(shù)據(jù)寫入recordname_pbidxnum.idx文件中,該基帶板回放索引數(shù)據(jù)保存完成;

所述recordname_pbidxnum.idx為基帶板原始數(shù)據(jù)回放索引文件,用于對基帶板原始數(shù)據(jù)進(jìn)行回放,在讀取到所有基帶板原始數(shù)據(jù)之后,將各基帶板原始數(shù)據(jù)的索引節(jié)點(diǎn)依次寫入到該文件,可實(shí)現(xiàn)基帶板原始數(shù)據(jù)回放,在回放時依次讀取索引節(jié)點(diǎn)中的每一個數(shù)據(jù)包的位置,并按照首次讀入數(shù)據(jù)的時序進(jìn)行回放;并且,每個.idx文件中存放若干個索引節(jié)點(diǎn)search_index_node數(shù)據(jù)結(jié)構(gòu),并且,search_index_node數(shù)據(jù)結(jié)構(gòu)如下:

S18:更新原始數(shù)據(jù)存儲文件cardid_datanum.dat、查詢索引文件cardid_idxnum.idx、回放索引文件recordname_pbidxnum.idx結(jié)尾位置,以進(jìn)行下次的原始數(shù)據(jù)存儲;

S19:基帶板原始數(shù)據(jù)保存流程結(jié)束。

5.根據(jù)權(quán)利要求3所述LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)保存、查詢及回放方法,其特征在于,所述LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)查詢,包括以下步驟:

層二板在接收到一個查詢請求數(shù)據(jù)子包PKT_REQUEST_QUERY_MAC_PDU,將會進(jìn)入到基帶板原始數(shù)據(jù)媒體接入控制層分組數(shù)據(jù)單元MAC PDU查詢處理流程,流程如下:

S21:層二板接收主控板原始數(shù)據(jù)包;

S22:層二板對主控板原始數(shù)據(jù)包進(jìn)行解析,解析原始數(shù)據(jù)包類型;

S23:判斷原始數(shù)據(jù)包的類型是否為0x1400,即是否為查詢請求數(shù)據(jù)子包PKT_REQUEST_QUERY_MAC_PDU,是則,執(zhí)行步驟S24,否則,不能進(jìn)入數(shù)據(jù)查詢流程,轉(zhuǎn)為執(zhí)行步驟S27;

S24:解析查詢請求數(shù)據(jù)子包得到基帶板原始數(shù)據(jù)MAC PDU查詢請求數(shù)據(jù)子包載荷REQ_MACPDU_sub_payload,基帶板原始數(shù)據(jù)MAC PDU查詢請求數(shù)據(jù)子包載荷結(jié)構(gòu)如下:

根據(jù)該結(jié)構(gòu)獲取需要查詢的存儲記錄名稱recordname、索引號seq_num、板卡號cardid;

通過REQ_MACPDU_sub_payload結(jié)構(gòu)體中的成員name得到recordname;

通過成員seq_num_HI的高4bit得到cardid;

通過成員seq_num_HI的低28bit向左移位28bit與成員seq_num_LO相或得到seq_num;

通過seq_num/10000000得到idxfilenum;

通過(seq_num%10000000)*sizeof(search_index_node)得到在cardid_idxnum.idx中的偏移為idx_offset;

在cardid_idxnum.idx讀取偏移為idx_offset的索引節(jié)點(diǎn)struct_search_index_nodeidx_node;

通過索引文件結(jié)構(gòu)體參量idx_node.pkt_len得到原始數(shù)據(jù)MAC PDU長度pktlen;

通過idx_node.file_num得到datfilenum;

通過idx_node.end_offset得到原始數(shù)據(jù)MAC PDU在cardid_datfilenum.dat中的偏移位置dat_offset;

在cardid_datnum.dat的dat_offset位置讀取pktlen長度的數(shù)據(jù)即得到了所需的原始數(shù)據(jù)MAC PDU;

S25:初始化big_pkt_data為空,big_pkt_size為0;根據(jù)板卡號cardid和索引號seq_num,讀取文件找到指定的原始數(shù)據(jù)MAC PDU所在位置,更新big_pkt_data,big_pkt_size;

S26:判斷big_pkt_data是否為空或者big_pkt_size是否為0,兩者滿足其一,說明未找到查詢數(shù)據(jù),發(fā)送定義為0x1303常量的PKT_QUERY_MAC_PDU_ACK應(yīng)答包,轉(zhuǎn)為執(zhí)行步驟S27;否則,將找到的原始數(shù)據(jù)MAC PDU數(shù)據(jù)包重組,并將組包后的數(shù)據(jù)發(fā)送到主控板,數(shù)據(jù)查詢完成;

S27:基帶板原始數(shù)據(jù)查詢流程結(jié)束。

6.根據(jù)權(quán)利要求3所述LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)保存、查詢及回放方法,其特征在于,所述LTE空口監(jiān)測儀基帶板原始數(shù)據(jù)回放,包括以下步驟:

層二板在接收到一個回放請求數(shù)據(jù)子包PKT_REQUEST_PLAYBACK_MAC_PDU后,將會進(jìn)入到基帶板原始數(shù)據(jù)媒體接入控制層分組數(shù)據(jù)單元MAC PDU回放處理流程,流程如下:

S31:層二板接收主控板原始數(shù)據(jù)包;

S32:層二板對主控板原始數(shù)據(jù)包進(jìn)行解析,解析原始數(shù)據(jù)包類型;

S33:判斷該原始數(shù)據(jù)包類型是否為0x1401,即是否為回放請求數(shù)據(jù)子包PKT_REQUEST_PLAYBACK_MAC_PDU,若是,執(zhí)行步驟S34,否則,不能進(jìn)入數(shù)據(jù)回放流程,轉(zhuǎn)為執(zhí)行步驟S37;

S34:解析回放請求數(shù)據(jù)子包得到基帶板原始數(shù)據(jù)MAC PDU回放請求數(shù)據(jù)包載荷PLAYBACK_MACPDU_sub_payload,并且,基帶板原始數(shù)據(jù)MAC PDU回放請求數(shù)據(jù)子包載荷結(jié)構(gòu)如下:

通過該結(jié)構(gòu)獲取需要回放的存儲記錄名稱recordname,并在存儲區(qū)查找該記錄;

讀取第一個文件recordname_0.idx開始,讀取該文件中的每一個索引節(jié)點(diǎn)struct_search_index_node idx_node,根據(jù)結(jié)構(gòu)體成員idx_node.pkt_len得到原始數(shù)據(jù)MAC PDU長度pktlen;根據(jù)結(jié)構(gòu)體成員idx_node.file_num得到datfilenum,根據(jù)結(jié)構(gòu)體成員idx_node.end_offset得到原始數(shù)據(jù)MAC PDU在cardid_datnum.dat中的偏移dat_offset;

在cardid_datnum.dat的dat_offset位置讀取pktlen長度的數(shù)據(jù)即得到了所需的原始數(shù)據(jù)MAC PDU;

S35:初始化big_pkt_data為空,big_pkt_size為0;根據(jù)板卡號cardid和索引號seq_num,讀取文件找到指定的原始數(shù)據(jù)MAC PDU所在位置,更新big_pkt_data,big_pkt_size;

S36:判斷big_pkt_data是否為空或者big_pkt_size是否為0,兩者滿足其一,退出該流程,即未查詢到請求回放的原始數(shù)據(jù)MAC PDU,轉(zhuǎn)為執(zhí)行步驟S37;否則,數(shù)據(jù)回放完成,進(jìn)入LTE載荷處理,并將原始數(shù)據(jù)交給層二協(xié)議棧處理;

S37:基帶板原始數(shù)據(jù)回放流程結(jié)束。

當(dāng)前第2頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
蒙阴县| 宾阳县| 宁国市| 田阳县| 南靖县| 河南省| 定南县| 大石桥市| 科技| 肇州县| 阿尔山市| 年辖:市辖区| 临颍县| 泰宁县| 横峰县| 永清县| 孟州市| 仁化县| 电白县| 会同县| 五河县| 苏尼特右旗| 永春县| 黄陵县| 岐山县| 乌鲁木齐市| 宜兴市| 淳化县| 抚宁县| 屯昌县| 长岛县| 疏附县| 桓台县| 隆安县| 上林县| 宁津县| 沾益县| 扬中市| 普格县| 二连浩特市| 太和县|