亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        通用應(yīng)用協(xié)議處理引擎

        2015-05-30 10:48:04黃群群
        中國新通信 2015年9期
        關(guān)鍵詞:鏈表引擎數(shù)據(jù)包

        黃群群

        【摘要】 在信息系統(tǒng)建設(shè)過程中,數(shù)據(jù)交互是必不可少的一環(huán)。其中與異構(gòu)系統(tǒng)進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)交互,并進(jìn)一步進(jìn)行業(yè)務(wù)處理是最為頻繁的。在一般的處理過程,數(shù)據(jù)的集合和散列往往和業(yè)務(wù)處理耦合在一起,這樣的話就會有很多重復(fù)開發(fā)。本文提出了一個通用的數(shù)據(jù)解析和組合引擎,根據(jù)配置的策略,對接收的數(shù)據(jù)包進(jìn)行解析,對要發(fā)送的數(shù)據(jù)進(jìn)行組合。

        【關(guān)鍵詞】 數(shù)據(jù)處理引擎 網(wǎng)絡(luò)協(xié)議處理

        在傳統(tǒng)的應(yīng)用網(wǎng)絡(luò)協(xié)議開發(fā)過程中,往往要根據(jù)協(xié)議規(guī)范去進(jìn)行設(shè)計編碼。應(yīng)用協(xié)議多種多樣,信息系統(tǒng)建設(shè)人員對每一個應(yīng)用協(xié)議都會進(jìn)行重新的設(shè)計開發(fā)。要提高開發(fā)的效率,首先就要將網(wǎng)絡(luò)數(shù)據(jù)的接收解碼、編碼發(fā)送從業(yè)務(wù)的邏輯處理中解耦出來。

        一、引擎總體架構(gòu)

        根據(jù)協(xié)議規(guī)范,數(shù)據(jù)包可劃分為若干域,每個域都可以抽象為某一種域類型。數(shù)據(jù)包中的這些域,有各種各樣的用途,但總體來說可以分為兩類:數(shù)據(jù)域和控制域。整個系統(tǒng)應(yīng)該包括策略配置模塊,引擎模塊,域?qū)ο竽K。其中配置模塊負(fù)責(zé)在初始化階段讀取配置文件,獲得處理策略,引擎模塊根據(jù)這些策略進(jìn)行數(shù)據(jù)處理。

        二、域?qū)ο竽K

        數(shù)據(jù)包中的域根據(jù)功能劃分,可以分為數(shù)據(jù)域和控制域。數(shù)據(jù)域主要是一些業(yè)務(wù)數(shù)據(jù),不影響數(shù)據(jù)包中其他域的行為??刂朴?,可以對數(shù)據(jù)包的一些行為進(jìn)行控制。

        對于一些通用的域類型,系統(tǒng)已經(jīng)提供對應(yīng)的類。而對于外部系統(tǒng)的一些個性化的域,可以擴(kuò)展到域?qū)ο竽K中。所有的域類都應(yīng)該實(shí)現(xiàn)公共接口。該域應(yīng)接口該如下定義:

        Class Field

        {

        Puhlic,:

        Parse(char%uf);,/解析

        Marshal(char*bllD;/,組包

        Verification(char *buf)

        Exception0;

        Bool IsControlField;//區(qū)分是控制域還是數(shù)據(jù)域

        Int size,

        }

        處理引擎提供若干常用的域類型,每個域類型都繼承這個基類。并可以擴(kuò)展更多域類型??刂朴蝾愋鸵彩抢^承于Field類,但是有更多的操作。定義如下

        Class CtrIField:puhlic Field

        {

        Public.:

        Parse(char *buf)

        {

        }

        Marshal(char *buf)

        {

        }

        Char*RcvCtrl(char *huf,int fd);

        Char * SendCtrl (char *buf,int fd);

        int ParseCtrl(char *buf,int index);

        int MarhalCtrl(char *bufint index);

        }

        其中Rcv Ctrl和SendCtrl在接收和發(fā)送階段對數(shù)據(jù)進(jìn)行控制處理,而ParseCtrl和MarshalCtrl在解析和組合數(shù)據(jù)包過程中進(jìn)行控制處理。所有的控制域都繼承該類。

        三、引擎模塊

        引擎模塊作為系統(tǒng)的核心部分,從配置模塊獲得對應(yīng)數(shù)據(jù)包類型的策略,根據(jù)策略對接收或者發(fā)送的數(shù)據(jù)包進(jìn)行處理。處理策略其實(shí)就是根據(jù)配置的包的域順序,構(gòu)造的鏈表,引擎根據(jù)該鏈表,順序的取出每個域,并調(diào)用該域的方法。整個策略引擎分為數(shù)據(jù)的接收和發(fā)送過程。

        Class Packet

        {

        Map parse(char*buffer);

        Char * marshal (Map map);

        Send(char *huffer);

        Rcv(char *buffer)

        Listlist:,/策略鏈表

        Preproc(char* buffer);//預(yù)處理

        mProc,(char* buffer);//中處理

        Afterproc(Map map);//后處理

        List

        猜你喜歡
        鏈表引擎數(shù)據(jù)包
        基于二進(jìn)制鏈表的粗糙集屬性約簡
        跟麥咭學(xué)編程
        SmartSniff
        基于鏈表多分支路徑樹的云存儲數(shù)據(jù)完整性驗(yàn)證機(jī)制
        藍(lán)谷: “涉藍(lán)”新引擎
        商周刊(2017年22期)2017-11-09 05:08:31
        無形的引擎
        河南電力(2015年5期)2015-06-08 06:01:46
        基于Cocos2d引擎的PuzzleGame開發(fā)
        基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計與實(shí)現(xiàn)
        鏈表方式集中器抄表的設(shè)計
        電測與儀表(2014年1期)2014-04-04 12:00:22
        視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
        日本一区二区三级在线观看 | 亚洲av无码av吞精久久| 国产欧美另类精品久久久| 毛片av在线尤物一区二区| 白白色免费视频一区二区在线| 国产精品国产三级国产密月| 国产激情综合在线观看| 99久久久无码国产精品试看| 久久婷婷色香五月综合激情| 国产精品久久夜伦鲁鲁| 中文字幕乱码亚洲一区二区三区 | 18禁黄污吃奶免费看网站| 亚洲精品无码久久久久| 国产亚洲欧洲AⅤ综合一区| 国内精品熟女一区二区| 国产在线观看午夜视频| 国产乱妇无码大片在线观看 | 乱伦一区二| 久草91这里只有精品| 精品嫩模福利一区二区蜜臀| 国产乱人无码伦av在线a | 国产96在线 | 免费| 国产一区二区三区不卡在线播放| 一区二区国产av网站| av无码av天天av天天爽| 激情欧美日韩一区二区| 久天啪天天久久99久孕妇| 日本女优久久精品久久| 草色噜噜噜av在线观看香蕉| 天天躁狠狠躁狠狠躁夜夜躁| 色综合久久精品中文字幕| 中文字幕日本五十路熟女| 人妻少妇精品视频专区vr| 天堂а√在线最新版中文在线| 国产片精品av在线观看夜色| 国产欧美日韩精品a在线观看| 国产真实乱对白在线观看| 国产一区在线视频不卡| 久久久99精品成人片| 中文无码一区二区不卡αv| 精品一区二区三区在线视频观看 |