999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種面向SSC的電信增值業(yè)務(wù)的生成方法及實(shí)現(xiàn)

2018-01-20 18:53:18范暉黃健呂林濤
現(xiàn)代電子技術(shù) 2018年1期

范暉+黃健+呂林濤

摘 要: 隨著電信業(yè)務(wù)需求的發(fā)展,業(yè)務(wù)的快速開發(fā)成為研究的熱點(diǎn)。為了提高業(yè)務(wù)流程的開發(fā)效率,針對電信增值業(yè)務(wù)的特點(diǎn),設(shè)計(jì)了一種業(yè)務(wù)生成系統(tǒng)。系統(tǒng)采用類C語法結(jié)構(gòu)對業(yè)務(wù)進(jìn)行描述,通過業(yè)務(wù)邏輯解釋程序進(jìn)行業(yè)務(wù)數(shù)據(jù)生成,再通過業(yè)務(wù)邏輯編譯程序和業(yè)務(wù)邏輯執(zhí)行程序完成標(biāo)準(zhǔn)業(yè)務(wù)組件SSC的生成。業(yè)務(wù)使用者通過SSC組合來完成新業(yè)務(wù)流程的處理。同基于CPL腳本的業(yè)務(wù)生成系統(tǒng)的比較,證明了該系統(tǒng)是可行有效的,可以提高業(yè)務(wù)開發(fā)速度,降低業(yè)務(wù)描述復(fù)雜度。

關(guān)鍵詞: 增值業(yè)務(wù); 業(yè)務(wù)邏輯; 標(biāo)準(zhǔn)業(yè)務(wù)組件; 業(yè)務(wù)邏輯編譯; 業(yè)務(wù)邏輯執(zhí)行; 腳本語言

中圖分類號: TN98?34; TP314 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2018)01?0160?05

Abstract: With the development of the telecommunication service demand, the rapid development of service becomes the research hotspot. According to the characteristics of the telecommunication value?added service, a business generation system was designed to improve the development efficiency of service process. The class C syntax structure is adopted in the system to describe the services. The service logic interpretive program is used to perform service data generation. The standard service component (SSC) generation is realized by means of the service logic compiling program and service logic executive program. The service user can process the new service flow by means of SSC combination. In comparison with the service generation system based on CPL script, the proposed system is feasible and effective, can improve the speed of service development, and reduce the complexity of service description.

Keywords: value?added service; service logic; standard service component; service logic compiling; service logic execution; scripting language

0 引 言

隨著社會、經(jīng)濟(jì)和科學(xué)技術(shù)的不斷發(fā)展,人們對信息的需求量日益增大,各種用戶對電信業(yè)務(wù)的需求也變得越來越復(fù)雜,這就要求電信網(wǎng)能迅速而靈活地向用戶提供各種電信業(yè)務(wù)。傳統(tǒng)做法是:用戶特征控制集中于每一個交換機(jī)中,每增加一種新業(yè)務(wù),通信網(wǎng)中的全部交換機(jī)就需要增加一部分軟件,由于交換機(jī)數(shù)量十分龐大,而且其類型多種多樣,每種交換機(jī)的結(jié)構(gòu)、軟件、設(shè)計(jì)方法等各不相同。每增加一種新業(yè)務(wù),必須要對網(wǎng)中全部交換機(jī)軟件進(jìn)行修改,不但工作量極大,而且由于對業(yè)務(wù)規(guī)范理解不一致,各種交換機(jī)間新業(yè)務(wù)互通經(jīng)常會出現(xiàn)各種問題。因此,傳統(tǒng)的新業(yè)務(wù)提供方法成本很高,可靠性差,而且需要較長時間[1]。

智能網(wǎng)(Intelligent Network,IN)是在原有通信網(wǎng)絡(luò)的基礎(chǔ)上為快速提供新的業(yè)務(wù)而設(shè)置的附加網(wǎng)絡(luò)結(jié)構(gòu)。其目的是為現(xiàn)有的、未來的所有通信網(wǎng)絡(luò)提供服務(wù),使得電信運(yùn)行商能經(jīng)濟(jì)有效地提供客戶所需的各類電信新業(yè)務(wù),使得客戶對網(wǎng)絡(luò)有更強(qiáng)的控制能力,能夠方便靈活地獲取所需的信息。

當(dāng)前業(yè)務(wù)的生成方式,根據(jù)其抽象程度,分為:基于API的編程方式;基于構(gòu)件的開發(fā)方式;基于腳本語言的開發(fā)方式等[2]。文獻(xiàn)[3]設(shè)計(jì)了一個基于CPL腳本的可視化編輯器,為開發(fā)電信增值業(yè)務(wù)提供了一種有效的方式。文獻(xiàn)[2]在CPL語法基礎(chǔ)上進(jìn)行了擴(kuò)展,引入了很多新的語法,擴(kuò)展后的語言稱為XPL,業(yè)務(wù)開發(fā)者可以通過手工書寫腳本的方式開發(fā)業(yè)務(wù)流程。

目前這些業(yè)務(wù)流程開發(fā)大多使用腳本語言進(jìn)行設(shè)計(jì),需要進(jìn)行解釋,降低了業(yè)務(wù)執(zhí)行速度,效率較低。腳本語言的描述是松散的類型定義,沒有類型聲明,并且需要在運(yùn)行時進(jìn)行動態(tài)類型檢查,不能提前發(fā)現(xiàn)業(yè)務(wù)生成的問題,需要等到業(yè)務(wù)部署后才可以發(fā)現(xiàn)。同時由于腳本語言的語法結(jié)構(gòu)受限,導(dǎo)致不能描述豐富多彩的業(yè)務(wù)內(nèi)容,個性化不夠。而且,腳本語言不易理解,需要將其翻譯成目標(biāo)語言才能執(zhí)行。

針對這個問題,以C語言為藍(lán)本設(shè)計(jì)并實(shí)現(xiàn)了一種面向智能網(wǎng)IN的業(yè)務(wù)生成系統(tǒng)。為了適應(yīng)電信業(yè)務(wù)的定制需要,對標(biāo)準(zhǔn)C的語法單位進(jìn)行了擴(kuò)展,通過使用這種擴(kuò)展C語言,對業(yè)務(wù)進(jìn)行規(guī)則描述,編寫相應(yīng)的處理動作,交給業(yè)務(wù)邏輯解釋程序、業(yè)務(wù)邏輯編譯程序和業(yè)務(wù)邏輯執(zhí)行程序,最后形成C目標(biāo)程序(業(yè)務(wù)標(biāo)準(zhǔn)組件SSC),用戶通過組合不同SSC完成對業(yè)務(wù)的靈活設(shè)置。同時,業(yè)務(wù)開發(fā)者也可以快速進(jìn)行SSC的開發(fā)。

1 業(yè)務(wù)邏輯設(shè)計(jì)

業(yè)務(wù)是電信運(yùn)營部門為滿足用戶對通信的要求而提供的通信能力。業(yè)務(wù)邏輯則是由用戶定制的一系列業(yè)務(wù)處理動作的集合。endprint

業(yè)務(wù)邏輯首先由業(yè)務(wù)生成系統(tǒng)或者業(yè)務(wù)開發(fā)者手工編寫。之后再由業(yè)務(wù)邏輯解釋程序翻譯成業(yè)務(wù)執(zhí)行程序可以識別且高效執(zhí)行的中間語言。最后交由業(yè)務(wù)編譯程序編譯成目標(biāo)代碼,由業(yè)務(wù)執(zhí)行程序按照一定的規(guī)則執(zhí)行,完成所規(guī)定業(yè)務(wù)動作。

設(shè)計(jì)的系統(tǒng)業(yè)務(wù)邏輯由用戶使用系統(tǒng)提供的標(biāo)準(zhǔn)業(yè)務(wù)組件SSC(Standard Service Component)進(jìn)行設(shè)計(jì),可以用巴克斯范式(BNF)描述業(yè)務(wù)邏輯。

SSC在提取眾多業(yè)務(wù)特征基礎(chǔ)上,抽取和業(yè)務(wù)無關(guān)的部分,編寫最基本的功能模塊。這些SSC可以被不同的業(yè)務(wù)邏輯復(fù)用。業(yè)務(wù)設(shè)計(jì)時,通過對不同的SSC進(jìn)行順序組合,即可完成不同業(yè)務(wù)需求的定制。

一個SSC通常包括:輸入、輸出和功能。其中輸入包含三部分:邏輯入口、業(yè)務(wù)支撐數(shù)據(jù)、呼叫實(shí)例數(shù)據(jù)。

輸出包含兩部分:邏輯出口、呼叫實(shí)例數(shù)據(jù)。

功能包括兩部分:編解碼、操作。

業(yè)務(wù)邏輯詞法描述和C語言類似,下面重點(diǎn)介紹語法結(jié)構(gòu)。

定義1:輸入信息描述了SSC的輸入?yún)?shù)的格式。BNF定義如下:

INPUT::=″″|″″| ″″;

其中第一列表示輸入字段的名字;第二列表示輸入字段的長度或者分隔符;第三列表示對輸入字段進(jìn)行預(yù)先轉(zhuǎn)換的函數(shù)。

定義2:輸出信息描述了SSC的輸出格式。

BNF定義如下:

OUTPUT ::=″< OutLength 2 int >″|″< OutDest 2 int>″ | ″< ErrorCode 1 int>″ |″″;

其中第一列表示輸出字段的名字;第二列表示輸出字段的長度或者分隔符;第三列表示輸出字段的類型。

定義3:編解碼規(guī)則描述SSC對輸入數(shù)據(jù)的解碼和對輸出數(shù)據(jù)的編碼。

1) TRANSIN_request::=″″; 表示將標(biāo)準(zhǔn)的輸入消息(INPUT)或者指針p所指向的數(shù)據(jù),按照消息結(jié)構(gòu)request進(jìn)行解碼。

2) FILLOUT_relay::=″″;表示將指針p所指向的數(shù)據(jù)或者relay數(shù)據(jù),按照OUTPUT結(jié)構(gòu)進(jìn)行編碼,結(jié)果存入OUTPUT中。

業(yè)務(wù)邏輯的語法支持以下幾種邏輯:

1) 任意算術(shù)運(yùn)算和邏輯運(yùn)算。

2) 支持變量、臨時變量(聲明、賦值、讀取)。

3) 選擇語句。

if(Expr)Statement;if(Expr)Statement

else Statement;

4) 循環(huán)語句。

while (Expr) Statement;do Statement

while (Expr);break;continue。

業(yè)務(wù)邏輯語法又在上面子集的基礎(chǔ)上進(jìn)行了擴(kuò)展:

1) SQL語句。

2) 輸入?yún)f(xié)議解讀/輸出協(xié)議組成。

3) 調(diào)用外部C程序函數(shù)。

下面重點(diǎn)介紹SQL語句,分為以下幾種:

EXEC SQL select_statement,EXEC MYSQL

select_statement,EXEC SQL plsql_statement,EXEC SQL dml_state? ment,EXEC SQL ddl_statement,COMMIT,ROLLBACK,F(xiàn)ETCH,F(xiàn)ETCHME等9種語句。

為了支持SQL語句的嵌套執(zhí)行,必須有多個SQL句柄。而以前使用的登錄句柄中只包含了一個語句句柄,無法執(zhí)行SQL語句的嵌套。因此,對登錄句柄的結(jié)構(gòu)進(jìn)行修改。

修改后,登錄句柄中有兩個公用句柄:一個專門執(zhí)行查詢語句;另外一個執(zhí)行DML,DDL語句。

用戶又可以自己申請一個私有語句句柄,存儲自己的語句信息。關(guān)鍵字EXEC MYSQL和FetchMe就是利用用戶句柄執(zhí)行SQL語句。

編程人員使用詞法和語法結(jié)構(gòu),根據(jù)要求編寫業(yè)務(wù)邏輯,形成標(biāo)準(zhǔn)的業(yè)務(wù)組件SSC,再通過詞法分析工具FLEX和語法分析工具YACC進(jìn)行處理,形成變量表、SQL語句表、執(zhí)行動作表,最后形成業(yè)務(wù)邏輯數(shù)據(jù)。具體如圖1所示。

2 業(yè)務(wù)邏輯數(shù)據(jù)定義

業(yè)務(wù)執(zhí)行程序的業(yè)務(wù)邏輯數(shù)據(jù)全部來自業(yè)務(wù)解釋程序。業(yè)務(wù)解釋程序與業(yè)務(wù)執(zhí)行程序之間的數(shù)據(jù)接口為某種格式的文件,具體見表1所示。

1) 變量表存儲結(jié)構(gòu)

struct VARLIST

{

int Type;

char IsCnst;

char Name[20];

union

{

int iValue;

double fValue;

char sValue[VARLEN]; };

}VarList[MAXVAR];

2) SQL語句存儲結(jié)構(gòu)

struct SQLLIST

{

char SQL[SQLLEN];

int SqlLen;

int BindNum;

int BindVar[MAXSQLVAR];

int DefineNum;

int DefineVar[MAXSQLVAR];

}SqlList[MAXSQL];

3) 執(zhí)行動作存儲結(jié)構(gòu)

struct _Quadruple

{

char Op[5];

int arg1;

int arg2;

int Result;

}QuadrupleList[MAXQUADRUPLE];

執(zhí)行動作存儲說明:

Op : 操作符。

arg1: 操作數(shù)據(jù)源,符號表的編號。

arg2: 操作數(shù)據(jù)源,符號表的編號。

Result: 當(dāng)操作符為運(yùn)算操作符時,表示操作數(shù)據(jù)的目的地,記錄的是符號表的編號;當(dāng)操作符為跳轉(zhuǎn)操作符時,表示跳轉(zhuǎn)的目的地,記錄的是動作編號;當(dāng)操作符為執(zhí)行SQL操作時,表示SQL語句的編號。

4) 輸入消息存儲結(jié)構(gòu)

struct _INPUT

{

char Name[IDENLEN];

//輸入變量的名字

int StartPos;

//輸入變量在協(xié)議中的開始位置

int Length;

//輸入變量在協(xié)議中的長度

int PLACE;

//輸入變量在符號表中的位置

char Func[IDENLEN];

//輸入變量的預(yù)處理函數(shù)

void (*FuncAddr)();

//輸入變量的預(yù)處理函數(shù)的地址

}Input[MAXINPUT];

5) 輸出消息存儲結(jié)構(gòu)

struct _OUTPUT

{

char Name[IDENLEN];

//輸出變量的名字

int StartPos;

//輸出變量在協(xié)議中的開始位置

int Length;

//輸出變量在協(xié)議中的長度

int PLACE;

//輸出變量在符號表中的位置

int Type;

//輸出變量的類型

}Output[MAXOUTPUT];

3 業(yè)務(wù)執(zhí)行算法

業(yè)務(wù)邏輯解釋程序一次性生成接口數(shù)據(jù)文件,傳遞給業(yè)務(wù)邏輯編譯程序和業(yè)務(wù)邏輯執(zhí)行程序,由業(yè)務(wù)邏輯編譯程序生成目標(biāo)代碼,然后交由業(yè)務(wù)執(zhí)行程序執(zhí)行業(yè)務(wù)邏輯所規(guī)定的動作。

根據(jù)業(yè)務(wù)邏輯解釋程序與業(yè)務(wù)邏輯執(zhí)行程序的接口,對接收的消息包按照執(zhí)行動作表進(jìn)行相應(yīng)處理。

業(yè)務(wù)執(zhí)行算法包括以下七步:

1) 接收消息。讀取輸入描述變量,根據(jù)輸入描述中對各字段規(guī)定的預(yù)處理函數(shù)對輸入進(jìn)行預(yù)處理。

2) 業(yè)務(wù)執(zhí)行程序讀入第一條執(zhí)行動作作為當(dāng)前動作。

3) 如果當(dāng)前執(zhí)行動作為動作表中的最后一個動作,則跳轉(zhuǎn)至7),否則取得當(dāng)前執(zhí)行動作的操作符OP。

4) 如果OP為無條件跳轉(zhuǎn)符號,則取執(zhí)行動作的result值域所指向的執(zhí)行動作為當(dāng)前執(zhí)行動作,跳轉(zhuǎn)至3)。如果為條件跳轉(zhuǎn),若條件成立,則取執(zhí)行動作的Result值域所指向的執(zhí)行動作為當(dāng)前執(zhí)行動作,跳轉(zhuǎn)至3);若條件不成立,讀入下一條執(zhí)行動作作為當(dāng)前動作,跳轉(zhuǎn)至3)。

5) 如果OP為執(zhí)行SQL語句,則執(zhí)行Result所指向的SQL語句,并讀入下一條執(zhí)行動作作為當(dāng)前動作,跳轉(zhuǎn)至3)。

6) 如果OP為運(yùn)算或賦值操作,則將arg1和arg2指向的數(shù)據(jù)執(zhí)行OP操作,結(jié)果存入Result所指向的數(shù)據(jù)地址。并讀入下一條執(zhí)行動作作為當(dāng)前動作,跳轉(zhuǎn)至3)。

7) 讀取輸出描述變量,根據(jù)輸出描述中對各字段規(guī)定的數(shù)據(jù)類型進(jìn)行強(qiáng)制轉(zhuǎn)化,并將數(shù)據(jù)發(fā)送出去,跳轉(zhuǎn)到1)。

4 實(shí)驗(yàn)結(jié)果及分析

圖2是開發(fā)的面向智能網(wǎng)IN的業(yè)務(wù)生成系統(tǒng)的軟件框架結(jié)構(gòu)。

業(yè)務(wù)使用者通過交互式GUI界面,使用鼠標(biāo)拖放和簡單數(shù)據(jù)配置來使用系統(tǒng)提供的SSC組件,即可自行設(shè)計(jì)業(yè)務(wù)處理流程。同時系統(tǒng)提供了業(yè)務(wù)在線仿真功能,來驗(yàn)證業(yè)務(wù)的正確性。

業(yè)務(wù)設(shè)計(jì)者通過類C語言設(shè)計(jì)SSC,通過業(yè)務(wù)邏輯解釋、業(yè)務(wù)邏輯編譯、業(yè)務(wù)邏輯執(zhí)行程序生成SSC。設(shè)計(jì)的SSC使用前就可以發(fā)現(xiàn)語法和邏輯錯誤,避免前述論文所設(shè)計(jì)的腳本語言在執(zhí)行期才可以發(fā)現(xiàn)錯誤的弊端。

從業(yè)務(wù)的開發(fā)速度、業(yè)務(wù)描述的復(fù)雜度、業(yè)務(wù)使用的難易度、業(yè)務(wù)執(zhí)行速度等方面,測試了本文設(shè)計(jì)的業(yè)務(wù)生成系統(tǒng)及參考文獻(xiàn)[3]的基于CPL腳本的業(yè)務(wù)生成系統(tǒng)。

圖3是兩種不同方案在開發(fā)速度和業(yè)務(wù)復(fù)雜度的對比。可以看出隨著業(yè)務(wù)流程復(fù)雜度的提高,SSC比CPL表現(xiàn)出更快的執(zhí)行速度,這主要是由于SSC使用類C開發(fā)語言設(shè)計(jì),接近于自然語言,比腳本這種解釋型語言更容易理解,語法也比其更加豐富,能夠設(shè)計(jì)復(fù)雜的業(yè)務(wù)流程,同時由于其是一次性編譯,而CPL是解釋型的,執(zhí)行速度較慢。

5 結(jié) 語

本文設(shè)計(jì)并實(shí)現(xiàn)了一種電信增值業(yè)務(wù)生成系統(tǒng),通過使用自定義的類C擴(kuò)展語言來設(shè)計(jì)基本的SSC,將C語言進(jìn)行了擴(kuò)充,使得其適宜開發(fā)復(fù)雜電信業(yè)務(wù),經(jīng)過業(yè)務(wù)邏輯解釋程序、業(yè)務(wù)邏輯編譯程序和業(yè)務(wù)邏輯執(zhí)行程序來完成業(yè)務(wù)的快速開發(fā)和實(shí)施。同基于腳本語言的CPL業(yè)務(wù)生成系統(tǒng)的對比測試表明,所設(shè)計(jì)的系統(tǒng)具有開發(fā)速度快、開發(fā)復(fù)雜度低等特點(diǎn),適宜電信增值業(yè)務(wù)的快速部署。

參考文獻(xiàn)

[1] ANL Mathematics and Computer Science Division. The message passing interface standard [EB/OL]. [2014?07?19]. http://www. mcs. anl.gov/reseach/projects/mpi/.endprint

[2] 楊骎,陳俊亮,孟祥武.一種面向LBS的電信增值業(yè)務(wù)生成方法及實(shí)現(xiàn)[J].軟件學(xué)報,2009,20(4):966?974.

YANG Qin, CHEN Junliang, MENG Xiangwu. LBS?oriented creation method and implementation for telecommunication value?added services [J]. Journal of software, 2009, 20(4): 966?974.

[3] 任曉明,宮云站,楊朝紅.電信業(yè)務(wù)腳本可視化生成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30(6):1527?1531.

REN Xiaoming, GONG Yunzhan, YANG Chaohong. Design and realization of visual service script creation [J]. Computer engineering and design, 2009, 30(6): 1527?1531.

[4] 孫晶,譚效輝,趙會群,等.球類比賽的腳本解釋器的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2010,30(3):613?617.

SUN Jing, TAN Xiaohui, ZHAO Huiqun, et al. Research and implementation of ball games scenario interpreter [J]. Journal of computer applications, 2010, 30(3): 613?617.

[5] 洪海濤,于東,陳龍,等.數(shù)控代碼解釋器模塊化結(jié)構(gòu)的研究與實(shí)現(xiàn)[J].小型微型計(jì)算機(jī)系統(tǒng),2013,34(3):480?485.

HONG Haitao, YU Dong, CHEN Long, et al. Research and implementation on the modular structure of NC code interpreter [J]. Journal of Chinese computer systems, 2013, 34(3): 480?485.

[6] 于江德,王希杰,樊孝忠.字標(biāo)注漢語詞法分析中上文和下文孰重孰輕[J].計(jì)算機(jī)科學(xué),2012,39(11):201?203.

YU Jiangde, WANG Xijie, FAN Xiaozhong. Which is more effective for Chinese lexical analysis via character tagging: above?context versus below?context [J]. Computer science, 2012, 39(11): 201?203.

[7] 劉秀磊,廖建新,朱曉民.本體匹配中基于詞義組合的詞法分析算法[J].電子學(xué)報,2012,40(8):1624?1630.

LIU Xiulei, LIAO Jianxin, ZHU Xiaomin. Lexical analysis based on combining senses in ontology matching [J]. ACTA electronica sinica, 2012, 40(8): 1624?1630.

[8] 范暉,夏清國.業(yè)務(wù)邏輯編譯器的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)科學(xué),2007,34(3):262?263.

FAN Hui, XIA Qingguo. Design and implementation of the service logical compiler [J]. Computer science, 2013, 34(3): 262?263.

[9] 陳火旺,劉春林.程序設(shè)計(jì)語言編譯原理[M].3版.北京:國防工業(yè)出版社,2004.

CHEN Huowang, LIU Chunlin. Compilation theorem of programming language [M]. 3rd ed. Beijing: National Defense Industry Press, 2014.

[10] 陸鋼,王哲.電信業(yè)務(wù)網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)與關(guān)鍵技術(shù)分析[J].電信科學(xué),2014,20(9):154?158.

LU Gang, WANG Zhe. Design of telecom service network infrastructure and analysis of key technologies [J]. Telecommucations science, 2014, 20(9): 154?158.

[11] 王勇.Web網(wǎng)絡(luò)環(huán)境下的語義檢索平臺設(shè)計(jì)與分析[J].現(xiàn)代電子技術(shù),2016,39(16):14?18.

WANG Yong. Design and analysis of semantic retrieval platform in web network environment [J]. Modern electronics technique, 2016, 39(16): 14?18.endprint

主站蜘蛛池模板: 九九久久精品国产av片囯产区| 波多野结衣一区二区三区88| 国产91在线免费视频| 免费一级无码在线网站| 亚洲国产黄色| 国产精品久久久久鬼色| 热久久国产| 97亚洲色综久久精品| 在线精品欧美日韩| 色综合综合网| 黄色国产在线| 亚洲丝袜第一页| 国产成人毛片| 国产亚洲精品无码专| 国产鲁鲁视频在线观看| 国产日韩欧美精品区性色| 人妻精品久久久无码区色视| 找国产毛片看| 永久免费无码成人网站| 亚洲女同欧美在线| 毛片免费视频| 久久精品亚洲热综合一区二区| 国产一区二区三区精品欧美日韩| 在线亚洲精品福利网址导航| 日韩精品无码免费专网站| 91在线国内在线播放老师| 亚洲一区二区三区国产精华液| 亚洲高清中文字幕在线看不卡| 国产精品亚洲а∨天堂免下载| 尤物在线观看乱码| 真实国产乱子伦高清| 欧美一级在线| 欧类av怡春院| 国产第一页亚洲| 亚洲一区二区日韩欧美gif| 美女啪啪无遮挡| 九色综合伊人久久富二代| 国内精品小视频福利网址| 精品在线免费播放| 大乳丰满人妻中文字幕日本| 日本高清在线看免费观看| 88av在线| 国产精品白浆在线播放| 免费毛片全部不收费的| 色AV色 综合网站| 亚洲中文无码h在线观看| 欧美自慰一级看片免费| 日韩 欧美 国产 精品 综合| 日韩经典精品无码一区二区| 激情综合婷婷丁香五月尤物| 国产系列在线| 真人免费一级毛片一区二区 | 激情无码视频在线看| 亚洲精品午夜无码电影网| 亚洲国产精品日韩av专区| 日a本亚洲中文在线观看| 国产日本欧美在线观看| 一区二区理伦视频| 思思99热精品在线| 国产精品成人久久| 一级毛片在线免费视频| 亚洲欧美不卡| 黄色免费在线网址| www.亚洲一区二区三区| 亚洲69视频| 久久久久无码国产精品不卡| 午夜毛片免费观看视频 | 亚洲精品视频网| 精品一区二区三区视频免费观看| 免费一级毛片| 成人免费视频一区| 精品亚洲国产成人AV| 亚洲成av人无码综合在线观看| 国产精品尤物铁牛tv| 国产亚洲高清在线精品99| 国产精品免费电影| 伊人久综合| 亚洲自拍另类| 91啪在线| 无码aⅴ精品一区二区三区| 欧美成在线视频| 亚洲欧美一区二区三区图片|