• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種異種網(wǎng)絡(luò)Modbus軟件網(wǎng)關(guān)的實現(xiàn)

    2015-01-26 14:13:30楊國棟高云嶺
    物聯(lián)網(wǎng)技術(shù) 2015年1期
    關(guān)鍵詞:吞吐量

    楊國棟+高云嶺

    摘 要:針對Modbus網(wǎng)關(guān)大部分產(chǎn)品為硬件實現(xiàn)成本高,可擴(kuò)展性差且功能單一的問題,提出了一種在基于軟件實現(xiàn)Modbus網(wǎng)關(guān)的方法。該方法支持異種網(wǎng)絡(luò)設(shè)備拓?fù)浼軜?gòu),支持多進(jìn)程處理進(jìn)一步提高M(jìn)odbus協(xié)議的吞吐量。同時在嵌入式Linux和Arm硬件平臺架構(gòu)上對該方法的正確性進(jìn)行了檢測驗證。

    關(guān)鍵詞:Modbus;軟件網(wǎng)關(guān);異種網(wǎng)絡(luò);吞吐量

    中圖分類號:TP273 ? ?文獻(xiàn)標(biāo)識碼:A ? ? 文章編號:2095-1302(2015)01-00-04

    0 ?引 ?言

    Modbus協(xié)議作為一種在工業(yè)控制領(lǐng)域廣泛使用的總線協(xié)議,其有著標(biāo)準(zhǔn)、開放,支持多種電氣接口,以及幀格式簡單、緊湊、通俗易懂等優(yōu)點。據(jù)不完全統(tǒng)計,自Modbus協(xié)議1979年面世以來,截止2007年,其已被應(yīng)用在了超過1 000萬個設(shè)備節(jié)點中。

    由于Modbus協(xié)議本身支持TCP和RTU兩種鏈路連接方式。對于TCP,其基于以太網(wǎng)為物理連接鏈路。而對于RTU,一般基于RS 232或者RS 485作為物理鏈路連接。對于Modbus設(shè)備節(jié)點的組網(wǎng),通常會基于同種物理鏈路,基于TCP方式的組網(wǎng),可以使用以太網(wǎng)交換機(jī)來完成。而對于RTU方式的組網(wǎng),RS 485通過雙絞線直接串接在一起即可。

    但由于實際應(yīng)用場景中,通常會結(jié)合兩種網(wǎng)絡(luò)的優(yōu)點。如以太網(wǎng)傳輸速度快,具有高吞吐率的特點,RS 485具有組網(wǎng)簡單,傳輸距離長的特點。通常采用Modbus硬件網(wǎng)關(guān)來結(jié)合兩種網(wǎng)絡(luò)組成異種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。但硬件網(wǎng)關(guān)具有接口數(shù)目固定,成本高,不便擴(kuò)展等缺點。

    本文針對這些實際應(yīng)用和產(chǎn)品維護(hù)期間遇到的問題,設(shè)計實現(xiàn)了一種針對異種網(wǎng)絡(luò)的,設(shè)置靈活,性能可靠,易擴(kuò)展,低成本的軟件網(wǎng)關(guān)實現(xiàn)方法。

    1 ?總體架構(gòu)設(shè)計

    Modbus協(xié)議通常用在如油田、車間等有多設(shè)備需要進(jìn)行組網(wǎng)且有復(fù)雜工況的環(huán)境下。多臺上位機(jī)可以通過RJ45連接到以太網(wǎng)交換機(jī),其通過1502端口發(fā)送標(biāo)準(zhǔn)的TCP數(shù)據(jù)包到以太網(wǎng)交換機(jī)。運行有Modbus網(wǎng)關(guān)的Modbus Server連接到以太網(wǎng)交換機(jī),其接收Modbus TCP數(shù)據(jù)請求并分析目的地址后將該數(shù)據(jù)請求分發(fā)到對應(yīng)的Modbus Server中。數(shù)據(jù)分發(fā)時,組件對應(yīng)的RS 485數(shù)據(jù)包并通過485總線傳遞數(shù)據(jù)。具體結(jié)構(gòu)如圖1所示。

    圖1 ?Modbus異種網(wǎng)絡(luò)組網(wǎng)拓?fù)鋱D

    一種在實際生產(chǎn)環(huán)境中經(jīng)常會見到的用例是:在油田監(jiān)控網(wǎng)絡(luò)中,上位機(jī)運行于監(jiān)控室監(jiān)控各個油井抽油機(jī)的狀態(tài)。而Modbus Server作為安裝在每一個油井抽油機(jī)上的監(jiān)控裝置用向采集油井狀態(tài)并向上位機(jī)匯報。運行有Modbus網(wǎng)關(guān)的Modbus Sever則可作為井場主監(jiān)控裝置起到一個數(shù)據(jù)轉(zhuǎn)發(fā)的作用。由于油井之間的距離長度通常會超過100 m,因此采用485串行物理鏈路的方式會更便于油井采集器之間的組網(wǎng)。而各個油井設(shè)備的數(shù)據(jù)匯聚到了主采集器之后,其過大的數(shù)據(jù)量對于485串行鏈路而言負(fù)擔(dān)較重,容易丟失數(shù)據(jù)。因此主采集器采用以太網(wǎng)物理鏈路與上位機(jī)連接。

    1.1 ?網(wǎng)關(guān)結(jié)構(gòu)

    Modbus網(wǎng)關(guān)運行于Modbus Server中,可根據(jù)配置文件來配置為是否啟動網(wǎng)關(guān)。啟動了網(wǎng)關(guān)的Modbus Server本身和其它Modbus Server設(shè)備一樣,也可以提供數(shù)據(jù)采集功能。

    為了能接收多個上位機(jī)的數(shù)據(jù)請求,運行了Modbus網(wǎng)關(guān)的Modbus Server會啟動一個支持多路輸入的Socket服務(wù)器用于監(jiān)聽上位機(jī)的TCP數(shù)據(jù)請求。對于請求本機(jī)地址的數(shù)據(jù),將直接返回相關(guān)數(shù)據(jù)。而對于其它Modbus Server地址的數(shù)據(jù)請求,將被網(wǎng)關(guān)中的數(shù)據(jù)分發(fā)器Dispatcher通過啟動一個獨立進(jìn)程的方式分發(fā)到Sub-Modbus Server中。為保證數(shù)據(jù)多個數(shù)據(jù)請求之間不會在485總線網(wǎng)絡(luò)中造成沖突,在數(shù)據(jù)分發(fā)器啟動的多個數(shù)據(jù)處理進(jìn)程和Sub-Modbus Servers之間,會存在一個總線鎖。Modbus網(wǎng)關(guān)結(jié)構(gòu)如圖2所示。

    圖2 ?Modbus網(wǎng)關(guān)結(jié)構(gòu)

    1.2 ?目的地址傳遞

    Modbus協(xié)議定義了一個與基礎(chǔ)通信層無關(guān)的簡單協(xié)議數(shù)據(jù)單元(PDU)。特定總線或者網(wǎng)絡(luò)上的Modbus協(xié)議映射能夠在應(yīng)用數(shù)據(jù)單元(ADU)上引入一些附加域,如地址域或差錯校驗域。Modbus通用數(shù)據(jù)幀如圖三所示。

    圖3 ?Modbus通用數(shù)據(jù)幀

    一個ADU最大長度為256 B。對于TCP通信鏈路,通常其ADU不包含差錯校驗部分,而會包含一個7 B的Modbus報文頭(MBAP)。MBAP的組成為2 B的事務(wù)元標(biāo)識符,2 B的協(xié)議標(biāo)識符以及2 B的數(shù)據(jù)包長度和1 B的單元標(biāo)識符。通常情況下,Modbus網(wǎng)關(guān)中在向串行鏈路設(shè)備轉(zhuǎn)發(fā)數(shù)據(jù)時的設(shè)備地址就保存在單元標(biāo)識符中。TCP通信鏈路下,ADU組成為:

    TCP MODBUS ADU = 249 B+ MBAP (7 B) = 256 B

    對于串型鏈路通信來說,其地址域為一個字節(jié)長度。而差錯校驗部分存儲的數(shù)據(jù)通過CRC16算法所得,其數(shù)據(jù)長度為2 B。因此最大PDU長度為253 B。一個最大長度的ADU組成為:

    RS 232 / RS 485 ADU = 253 B + 服務(wù)器地址(1 B) + CRC (2 B) = 256 B。

    1.3 ?數(shù)據(jù)包解析

    Modbus定義了4種具有不同特征的數(shù)據(jù)模型,分別是:

    (1)離散量輸入,為只讀的單個比特位;

    (2)線圈變量,為可讀寫的單個比特位;

    (3)輸入寄存器,為只讀的2 B;

    (4)輸出寄存器,為可讀寫的2 B。

    對于這4種數(shù)據(jù),Modbus協(xié)議都允許單個選擇65 536個數(shù)據(jù)項,但實際而言,數(shù)據(jù)的大小規(guī)格限制和事務(wù)處理的功能碼是相關(guān)聯(lián)的。在本實現(xiàn)中,取工業(yè)控制領(lǐng)域常用的8個功能碼來作為數(shù)據(jù)網(wǎng)關(guān)中處理的數(shù)據(jù)請求,如下:

    0x01 讀線圈

    0x02 讀輸入離散量

    0x03 讀多個輸出寄存器

    0x04 讀多個輸入寄存器

    0x05 寫單個線圈

    0x06 寫單個寄存器

    0x0F 寫多個線圈

    0x10寫多個寄存器

    以讀多個輸出寄存器為例。讀數(shù)據(jù)時,請求PDU中需指定輸出寄存器的起始地址和讀取數(shù)量。一個讀取輸出寄存器第108到110的3個寄存器的數(shù)據(jù)如表1所示。

    表1 ?讀輸出寄存器

    請求 響應(yīng)

    名稱 數(shù)值(十

    六進(jìn)制) 名稱 數(shù)值(十

    六進(jìn)制)

    功能碼 03 功能碼 03

    起始地址(高) 00 數(shù)據(jù)長度 06

    起始地址(低) 6B 寄存器值(高)- 108 02

    讀取寄存器個(高) 00 寄存器值(低)- 108 2B

    讀取寄存器個(低) 03 寄存器值(高)- 109 00

    寄存器值(低)- 109 00

    寄存器值(高)- 110 00

    寄存器值(低)- 110 64

    在網(wǎng)關(guān)中對數(shù)據(jù)解析時,對于不同的功能碼,應(yīng)根據(jù)Modbus協(xié)議中的數(shù)據(jù)格式定義來對數(shù)據(jù)包進(jìn)行解析。

    2 ?模塊功能詳細(xì)設(shè)計

    2.1 ?Socket服務(wù)器模塊設(shè)計

    軟件網(wǎng)關(guān)與上位機(jī)之間通過TCP進(jìn)行連接,網(wǎng)關(guān)將啟動一個socket服務(wù)器監(jiān)聽來自上位機(jī)的Modbus客戶端的請求。由于會存在多臺上位機(jī),socket服務(wù)器在設(shè)計中需考慮可同時接受多個TCP請求。而對于TCP請求,在一條鏈路已經(jīng)建立以后,來自同一臺上位機(jī)的再次請求應(yīng)不需要再次進(jìn)行鏈路的建立。

    首先對于一個未建立過連接的TCP請求,需要為該請求創(chuàng)建必要的工作環(huán)境并保存環(huán)境??紤]到網(wǎng)關(guān)的處理能力,對于允許的最大連接數(shù)將通過配置文件進(jìn)行讀取。

    // Clear the reference set of socket

    FD_ZERO(&refset);

    // Add the server socket

    FD_SET(server_socket, &refset);

    // Keep track of the max file descriptor

    fdmax = server_socket;

    for (;;) {

    rdset = refset;

    select(fdmax+1, &rdset, NULL, NULL, NULL);

    // Run through the existing connections looking for data to be read

    for (master_socket = 0; master_socket <= fdmax; master_socket++) {

    if (FD_ISSET(master_socket, &rdset)) {

    if (master_socket == server_socket) {

    /* A client is asking a new connection */

    memset(&clientaddr, 0, sizeof(clientaddr));

    newfd = accept(server_socket, (struct sockaddr *)&clientaddr, &addrlen);

    if (newfd == -1) { perror(“Server accept() error”); ?}

    else { FD_SET(newfd, &refset);

    if (newfd > fdmax) {

    fdmax = newfd; ?/* Keep track of the maximum */

    } ? } ? }

    }

    }

    }

    而對于一個已經(jīng)建立好的連接,則需要調(diào)用轉(zhuǎn)發(fā)函數(shù)將其轉(zhuǎn)發(fā)到對應(yīng)的子設(shè)備中去。對于目的地址為網(wǎng)關(guān)設(shè)備本身的,需要根據(jù)上位機(jī)的請求,將網(wǎng)關(guān)設(shè)備本身采集到的數(shù)據(jù)返回給上位機(jī)或者完成對應(yīng)的寫數(shù)據(jù)操作。在對于網(wǎng)關(guān)設(shè)備本身的操作中,由于modbus數(shù)據(jù)通常為由一個獨立的進(jìn)程采集并存放到共享內(nèi)存中,因此在操作共享內(nèi)存時,需使用信號量來保證數(shù)據(jù)的正確性。

    /* An already connected master has sent a new query */

    modbus_set_socket(ctx, master_socket);

    rc = modbus_receive(ctx, query);

    if (rc > 0) {if (query[header_length -1] != config->server_id) {

    device_write_hook (query, header_length, config, (share_mm_data *)share_mm);

    sem_wait(&sem);

    copy_mem_from_sharing (share_mm, mb_mapping); ?// copy memory form sharing mem into modbus mapping area.

    sem_post(&sem);

    } else {modbus_dispatch (ctx, query, config); } ?// For gateway mode switch

    modbus_reply(ctx, query, rc, mb_mapping);}

    2.2 ?組包模塊設(shè)計

    在組建Modbus數(shù)據(jù)包時, 由于不同的Modbus請求命令其數(shù)據(jù)包組成結(jié)構(gòu)不相同,因此需根據(jù)Modbus請求命令的不同來進(jìn)行判斷。

    組包模塊主要提供2個函數(shù),其定義如下:

    int package_read_data (char *data_485, char *data_tcp, int direction);

    int package_write_data (char *data_485, char *data_tcp, int direction);

    package_read_data函數(shù)用于將Modbus的讀數(shù)據(jù)請求進(jìn)行TCP數(shù)據(jù)包和485數(shù)據(jù)包之間的轉(zhuǎn)換,根據(jù)direction參數(shù)的變化來決定轉(zhuǎn)換的方向。而package_write_data函數(shù)則用于將Modbus的寫數(shù)據(jù)請求進(jìn)行TCP數(shù)據(jù)包和485數(shù)據(jù)包之間的轉(zhuǎn)換。

    對于讀數(shù)據(jù),收到的數(shù)據(jù)包中相關(guān)的Modbus功能碼為0x01、0x02、0x03、0x04,其數(shù)據(jù)復(fù)制組包的過程如圖4所示:

    圖4 ?讀數(shù)據(jù)時數(shù)據(jù)復(fù)制包過程

    對于寫數(shù)據(jù),收到的數(shù)據(jù)包中相關(guān)的Modbus功能碼為0x05、0x06、0x0F、0x10,其數(shù)據(jù)復(fù)制組包的過程如圖5所示:

    圖5 ?寫數(shù)據(jù)時數(shù)據(jù)復(fù)制包過程

    2.3 ?轉(zhuǎn)發(fā)模塊設(shè)計

    數(shù)據(jù)轉(zhuǎn)發(fā)模塊首先會啟動一個獨立的進(jìn)程并在該進(jìn)程中完成數(shù)據(jù)轉(zhuǎn)發(fā)的全部過程。由于數(shù)據(jù)轉(zhuǎn)發(fā)的過程中,可能會有其它上位機(jī)的數(shù)據(jù)請求再次到來并啟動一個進(jìn)程通過485總線向下位機(jī)傳遞數(shù)據(jù),因此在任意一個進(jìn)程通過485總線傳輸數(shù)據(jù)時,需對該總線進(jìn)行上鎖。同2.1節(jié)中設(shè)計一樣,此處采用信號量完成該工作。

    網(wǎng)關(guān)運行過程中,由于父進(jìn)程可能會隨時退出,在數(shù)據(jù)轉(zhuǎn)發(fā)子進(jìn)程中需監(jiān)控父進(jìn)程信息。如父進(jìn)程退出,則數(shù)據(jù)轉(zhuǎn)發(fā)子進(jìn)程也應(yīng)退出從而避免成為僵尸進(jìn)程。核心代碼如下:

    pid=fork();

    if (pid == -1) { exit(1); ?}

    else if (pid == 0) {

    // Child

    share_mm= shmat (shmid, 0, 0);

    ctx = modbus_new_rtu(config->dev, config->baudrate, config->parity, config->data_bit, config->stop_bit);

    package_485_data (query, output);

    sem_wait(&sem_485);

    send_485_data (output);

    sem_post(&sem_485);

    while (1) { ? ?// 判斷父進(jìn)程是否已退出

    if (getppid() == 1) { exit(0); ?}

    // Wait response

    modbus_receive_confirmation(ctx, response);

    if (response != -1) { ?break; ?}

    }

    package_tcp_data (response, output);

    send_tcp_data (output);

    }

    其流程如圖6所示:

    圖6 ?數(shù)據(jù)轉(zhuǎn)發(fā)流程

    3 ?功能驗證

    以AT91RM9200為硬件平臺,以Linux 3.8為內(nèi)核以及基于Busybox 1.2.0組件的根文件系統(tǒng)為軟件平臺作為Modbus服務(wù)器的測試平臺。上位機(jī)為普通PC,運行Ubutntu 12.04?;诒疚闹袌D一搭建測試網(wǎng)絡(luò)結(jié)構(gòu)。驗證的主要過程如下:

    3.1 ?客戶端配置

    (1)配置服務(wù)器IP及Modbus網(wǎng)關(guān)IP。假設(shè)服務(wù)器端IP地址信息為192.168.1.110,運行網(wǎng)關(guān)的Modbus網(wǎng)關(guān)服務(wù)器的IP地址信息為:192.168.1.111。需更改Modbus網(wǎng)關(guān)服務(wù)器應(yīng)用程序配置文件/etc/modbus/config.ini文件如下:

    [GLOBAL]

    type=route

    mode=tcp

    server_id=1

    [NETWORK]

    ip_addr=192.168.1.111

    (2)將子Modbus服務(wù)器通過485線纜連接到Modbus網(wǎng)關(guān)服務(wù)器。

    (3)啟動Modbus網(wǎng)關(guān)應(yīng)用程序。

    (4)各子Modbus服務(wù)器啟動Modbus服務(wù)應(yīng)用。

    3.2 ?服務(wù)器端配置

    服務(wù)器端運行一個封裝了標(biāo)準(zhǔn)Modbus請求的客戶端應(yīng)用程序即可。通過TCP方式向Modbus網(wǎng)關(guān)服務(wù)器發(fā)送Modbus數(shù)據(jù)請求。

    3.3 ?驗證結(jié)果

    在Ubuntu 12.04 上位機(jī)開始執(zhí)行Modbus,以TCP方式向Modbus網(wǎng)關(guān)服務(wù)器分別發(fā)送讀、寫數(shù)據(jù)請求。測試Modbus網(wǎng)關(guān)收到了信息并進(jìn)行了數(shù)據(jù)轉(zhuǎn)發(fā),而對應(yīng)的子Modbus服務(wù)器也收到了從Modbus網(wǎng)關(guān)服務(wù)器發(fā)送的485數(shù)據(jù)格式的數(shù)據(jù)請求。測試結(jié)果如圖7所示。

    圖7 ?調(diào)試信息采集和集成測試

    測試重點完成了兩項驗證,其一,上位機(jī)發(fā)送的數(shù)據(jù)被Modbus網(wǎng)關(guān)所收到并進(jìn)行了轉(zhuǎn)發(fā);其二,子Modbus服務(wù)器收到了Modbus網(wǎng)關(guān)的數(shù)據(jù)請求。

    4 ?結(jié) ?語

    本文主要描述了一種異種網(wǎng)絡(luò)Modbus軟件網(wǎng)關(guān)的設(shè)計與實現(xiàn),考慮了多種實際工作中的應(yīng)用場景。結(jié)合了485物理鏈路和以太網(wǎng)物理鏈路的優(yōu)點,可以應(yīng)用在多任務(wù)、多設(shè)備的復(fù)雜網(wǎng)絡(luò)拓?fù)渲小M容^目前常見的硬件網(wǎng)關(guān)而言,其低成本、易擴(kuò)展的特點具有非常現(xiàn)實的積極意義。而在油田中部署的油井監(jiān)控系統(tǒng)也充分驗證了本系統(tǒng)的設(shè)計與實現(xiàn)。

    參考文獻(xiàn)

    [1]李英奇,吳桂初.Modbus-ModbusTCP/IP的網(wǎng)關(guān)設(shè)計[J]. 微型機(jī)與應(yīng)用, 2013(10):48-50.

    [2]翁建年,張浩,彭道剛,等. 基于嵌入式ARM的Modbus/TCP協(xié)議的研究與實現(xiàn)[J].計算機(jī)應(yīng)用與軟件,2009,26(10):36-39.

    [3] Wikipedia.Modbus[EB/OL]. http://en.wikipedia.org/wiki/Modbus,2013.

    猜你喜歡
    吞吐量
    2019年6月長三角地區(qū)主要港口吞吐量
    集裝箱化(2019年7期)2019-10-18 03:04:05
    2017年12月長三角地區(qū)主要港口吞吐量
    集裝箱化(2018年1期)2018-08-23 06:57:08
    2018年10月長三角地區(qū)主要港口吞吐量
    集裝箱化(2018年11期)2018-03-01 00:26:46
    2017年11月長三角地區(qū)主要進(jìn)港口吞吐量
    集裝箱化(2017年12期)2018-01-18 15:22:48
    2017年10月長三角地區(qū)主要港口吞吐量
    集裝箱化(2017年11期)2017-12-08 19:20:20
    2017年6月長三角地區(qū)主要港口吞吐量
    集裝箱化(2017年7期)2017-08-23 10:53:40
    2017年4月長三角地區(qū)主要港口吞吐量
    集裝箱化(2017年5期)2017-07-06 14:55:16
    2017年3月長三角地區(qū)主要港口吞吐量
    集裝箱化(2017年4期)2017-05-17 19:22:10
    2016年10月長三角地區(qū)主要港口吞吐量
    集裝箱化(2016年11期)2017-03-29 16:15:48
    2016年11月長三角地區(qū)主要港口吞吐量
    集裝箱化(2016年12期)2017-03-20 08:32:27
    国产亚洲欧美在线一区二区| 91成人精品电影| 青春草视频在线免费观看| 亚洲久久久国产精品| 国产伦人伦偷精品视频| bbb黄色大片| 国产视频首页在线观看| 亚洲精品成人av观看孕妇| 嫩草影视91久久| 欧美变态另类bdsm刘玥| 母亲3免费完整高清在线观看| 国产成人一区二区三区免费视频网站 | 午夜免费观看性视频| 99国产综合亚洲精品| 日本午夜av视频| 丰满迷人的少妇在线观看| 美女国产高潮福利片在线看| 国产主播在线观看一区二区 | 久热爱精品视频在线9| 亚洲第一av免费看| 天天操日日干夜夜撸| 一级毛片 在线播放| 国产成人a∨麻豆精品| 婷婷色av中文字幕| 黄色一级大片看看| 精品一区二区三区四区五区乱码 | 精品视频人人做人人爽| 免费女性裸体啪啪无遮挡网站| 国产成人一区二区三区免费视频网站 | 少妇 在线观看| 午夜影院在线不卡| 欧美精品亚洲一区二区| 悠悠久久av| 91精品三级在线观看| 麻豆av在线久日| 大码成人一级视频| 免费日韩欧美在线观看| 免费少妇av软件| 亚洲第一青青草原| 视频在线观看一区二区三区| 一级毛片电影观看| 国产亚洲一区二区精品| 啦啦啦 在线观看视频| 这个男人来自地球电影免费观看| 国产精品 欧美亚洲| 曰老女人黄片| 人妻 亚洲 视频| 亚洲av日韩在线播放| 一本色道久久久久久精品综合| 天天躁日日躁夜夜躁夜夜| 成人国产一区最新在线观看 | 我要看黄色一级片免费的| 丝瓜视频免费看黄片| 国产欧美日韩精品亚洲av| 欧美亚洲 丝袜 人妻 在线| 啦啦啦在线免费观看视频4| 亚洲欧美中文字幕日韩二区| 午夜免费观看性视频| 亚洲av欧美aⅴ国产| 在线av久久热| 中文字幕精品免费在线观看视频| 久久狼人影院| 母亲3免费完整高清在线观看| 亚洲国产中文字幕在线视频| 国产av国产精品国产| 女性被躁到高潮视频| 老司机影院毛片| 亚洲专区中文字幕在线| 日韩制服丝袜自拍偷拍| av天堂在线播放| 亚洲视频免费观看视频| 国产欧美日韩精品亚洲av| 免费观看av网站的网址| 免费观看a级毛片全部| 免费在线观看黄色视频的| 波多野结衣一区麻豆| 久9热在线精品视频| 男女边吃奶边做爰视频| 国产日韩一区二区三区精品不卡| 50天的宝宝边吃奶边哭怎么回事| 精品卡一卡二卡四卡免费| 亚洲国产精品成人久久小说| 国产精品国产三级国产专区5o| 久久人人爽人人片av| 99久久人妻综合| 精品久久久久久电影网| 亚洲一码二码三码区别大吗| 99国产精品一区二区蜜桃av | 老司机影院毛片| 免费观看av网站的网址| 免费看十八禁软件| 操出白浆在线播放| 国产精品欧美亚洲77777| 一级毛片女人18水好多 | 美女脱内裤让男人舔精品视频| 欧美xxⅹ黑人| 欧美日韩亚洲综合一区二区三区_| 99精国产麻豆久久婷婷| 又大又爽又粗| 亚洲欧洲国产日韩| 国产成人欧美在线观看 | 久久免费观看电影| 91老司机精品| 人人妻,人人澡人人爽秒播 | √禁漫天堂资源中文www| 久久综合国产亚洲精品| 另类精品久久| 岛国毛片在线播放| 色婷婷av一区二区三区视频| 女性被躁到高潮视频| 国产精品国产av在线观看| 超色免费av| 我的亚洲天堂| 日本五十路高清| 精品国产一区二区三区久久久樱花| 中文欧美无线码| 国产高清videossex| 啦啦啦啦在线视频资源| 最近中文字幕2019免费版| 亚洲欧美成人综合另类久久久| 一级毛片我不卡| 亚洲国产看品久久| 欧美人与性动交α欧美精品济南到| 美女福利国产在线| 天天影视国产精品| 免费看十八禁软件| 亚洲欧美一区二区三区久久| 亚洲精品久久成人aⅴ小说| 婷婷色麻豆天堂久久| 黄色a级毛片大全视频| 韩国精品一区二区三区| 亚洲一区二区三区欧美精品| 精品少妇内射三级| 久久久欧美国产精品| 久久99精品国语久久久| 99久久99久久久精品蜜桃| 亚洲少妇的诱惑av| 亚洲精品久久久久久婷婷小说| 人人澡人人妻人| 少妇粗大呻吟视频| 中文字幕另类日韩欧美亚洲嫩草| 国产精品一区二区免费欧美 | 看十八女毛片水多多多| 久久久精品94久久精品| 日韩制服丝袜自拍偷拍| 亚洲av国产av综合av卡| 午夜日韩欧美国产| 久久精品aⅴ一区二区三区四区| 大香蕉久久成人网| 女人爽到高潮嗷嗷叫在线视频| avwww免费| 嫁个100分男人电影在线观看 | 国产免费福利视频在线观看| 精品少妇久久久久久888优播| 韩国精品一区二区三区| 亚洲一码二码三码区别大吗| 久久综合国产亚洲精品| 免费少妇av软件| 免费人妻精品一区二区三区视频| 国语对白做爰xxxⅹ性视频网站| 在线观看一区二区三区激情| 亚洲精品久久久久久婷婷小说| 国产成人免费无遮挡视频| 91成人精品电影| a级毛片在线看网站| 国产成人av激情在线播放| 乱人伦中国视频| 满18在线观看网站| 久久青草综合色| 在线观看人妻少妇| 亚洲人成77777在线视频| 少妇人妻久久综合中文| 少妇 在线观看| 美女高潮到喷水免费观看| 久久久久视频综合| 麻豆乱淫一区二区| 亚洲,欧美精品.| 日韩制服骚丝袜av| 另类精品久久| 亚洲国产精品一区二区三区在线| 中文字幕色久视频| 侵犯人妻中文字幕一二三四区| 久久毛片免费看一区二区三区| 99热国产这里只有精品6| 久久久久久久久免费视频了| 9热在线视频观看99| 国产免费又黄又爽又色| 女人久久www免费人成看片| 99精品久久久久人妻精品| 2021少妇久久久久久久久久久| 亚洲国产成人一精品久久久| 婷婷色麻豆天堂久久| 日日摸夜夜添夜夜爱| 91字幕亚洲| 男人添女人高潮全过程视频| 国产成人精品久久二区二区91| 国产精品一国产av| 久久狼人影院| 男的添女的下面高潮视频| 狂野欧美激情性xxxx| 亚洲精品日本国产第一区| 丝瓜视频免费看黄片| 亚洲精品美女久久久久99蜜臀 | 日韩大片免费观看网站| 久久久久久久久免费视频了| 麻豆乱淫一区二区| 在线精品无人区一区二区三| 国产欧美日韩综合在线一区二区| 日本av手机在线免费观看| 国产高清视频在线播放一区 | 国产一区二区三区综合在线观看| 国产福利在线免费观看视频| 中文字幕人妻熟女乱码| 9色porny在线观看| 亚洲欧美日韩另类电影网站| tube8黄色片| 大陆偷拍与自拍| 人成视频在线观看免费观看| 精品一区二区三区四区五区乱码 | 日韩制服丝袜自拍偷拍| 视频区欧美日本亚洲| 69精品国产乱码久久久| 欧美大码av| 亚洲精品第二区| 国产精品国产av在线观看| 两性夫妻黄色片| 一级毛片 在线播放| 国产老妇伦熟女老妇高清| 亚洲精品美女久久久久99蜜臀 | 黄片小视频在线播放| av片东京热男人的天堂| 亚洲精品成人av观看孕妇| 丝袜美腿诱惑在线| av在线播放精品| 男女无遮挡免费网站观看| 久9热在线精品视频| 丝袜脚勾引网站| 女性生殖器流出的白浆| 亚洲欧美日韩高清在线视频 | 亚洲伊人色综图| 最新的欧美精品一区二区| 女人爽到高潮嗷嗷叫在线视频| 一本一本久久a久久精品综合妖精| 久久久久国产一级毛片高清牌| 亚洲精品中文字幕在线视频| 99精国产麻豆久久婷婷| 91老司机精品| 18禁国产床啪视频网站| 国产精品 欧美亚洲| 男女午夜视频在线观看| 欧美日韩一级在线毛片| 午夜两性在线视频| 在线看a的网站| 亚洲精品av麻豆狂野| 日韩欧美一区视频在线观看| 色婷婷av一区二区三区视频| 久久久久久人人人人人| 国产成人影院久久av| 超碰成人久久| 一级毛片黄色毛片免费观看视频| 久久 成人 亚洲| 国产午夜精品一二区理论片| 免费看十八禁软件| 久久99热这里只频精品6学生| 亚洲国产精品国产精品| 亚洲九九香蕉| 中文字幕色久视频| 一本久久精品| 国产免费又黄又爽又色| 久久久久久久久久久久大奶| 国产精品 欧美亚洲| 久久久精品区二区三区| 在线观看免费视频网站a站| 亚洲国产成人一精品久久久| 尾随美女入室| 国产成人一区二区三区免费视频网站 | 一级毛片 在线播放| 亚洲一区中文字幕在线| 中文字幕人妻丝袜一区二区| 国产成人一区二区三区免费视频网站 | 天天躁日日躁夜夜躁夜夜| 日本欧美视频一区| 亚洲黑人精品在线| av天堂久久9| 欧美成人精品欧美一级黄| 国产精品九九99| 十分钟在线观看高清视频www| a 毛片基地| 在线天堂中文资源库| 欧美日韩福利视频一区二区| 啦啦啦视频在线资源免费观看| 一本大道久久a久久精品| 欧美 日韩 精品 国产| 亚洲av美国av| 别揉我奶头~嗯~啊~动态视频 | 一本久久精品| 亚洲,欧美精品.| 人人妻人人澡人人看| 在线 av 中文字幕| 国产又色又爽无遮挡免| 国产成人精品久久久久久| 十八禁人妻一区二区| 桃花免费在线播放| 国产精品 欧美亚洲| 精品少妇内射三级| 一边摸一边抽搐一进一出视频| 国产爽快片一区二区三区| 一二三四社区在线视频社区8| 又大又黄又爽视频免费| 久久久久久亚洲精品国产蜜桃av| 精品国产一区二区久久| 老司机午夜十八禁免费视频| 又大又黄又爽视频免费| 午夜老司机福利片| 亚洲伊人久久精品综合| 国产精品秋霞免费鲁丝片| 亚洲人成电影免费在线| 国产熟女午夜一区二区三区| 观看av在线不卡| 美女主播在线视频| 国产一区二区三区av在线| 只有这里有精品99| 18在线观看网站| 大香蕉久久成人网| 日本色播在线视频| 免费在线观看黄色视频的| 人人妻人人澡人人看| 精品一区二区三区四区五区乱码 | 国产男人的电影天堂91| 国产亚洲欧美精品永久| 男女边吃奶边做爰视频| 中文字幕最新亚洲高清| 黄片播放在线免费| 亚洲色图综合在线观看| 国产免费视频播放在线视频| 亚洲国产欧美网| 亚洲精品国产av成人精品| 女性被躁到高潮视频| 一级a爱视频在线免费观看| 日韩中文字幕欧美一区二区 | 久久人妻福利社区极品人妻图片 | 久久影院123| 人人澡人人妻人| 国产1区2区3区精品| 99久久99久久久精品蜜桃| 夜夜骑夜夜射夜夜干| 成年人午夜在线观看视频| 亚洲精品成人av观看孕妇| 亚洲av综合色区一区| 亚洲精品国产av蜜桃| av在线app专区| 男人添女人高潮全过程视频| 久久毛片免费看一区二区三区| 欧美黄色片欧美黄色片| 亚洲中文av在线| 国产有黄有色有爽视频| 免费女性裸体啪啪无遮挡网站| 久久久国产精品麻豆| 亚洲国产精品999| videosex国产| 亚洲欧美一区二区三区黑人| 国产成人影院久久av| 在线观看免费午夜福利视频| 一本色道久久久久久精品综合| 国产亚洲午夜精品一区二区久久| 黑人欧美特级aaaaaa片| 少妇猛男粗大的猛烈进出视频| 91九色精品人成在线观看| 97人妻天天添夜夜摸| 欧美亚洲日本最大视频资源| av天堂在线播放| 午夜福利一区二区在线看| 99国产精品免费福利视频| 国产男女超爽视频在线观看| 在线看a的网站| 欧美成狂野欧美在线观看| 亚洲国产av影院在线观看| 日本猛色少妇xxxxx猛交久久| 人人妻人人添人人爽欧美一区卜| 好男人视频免费观看在线| 精品福利观看| 伊人久久大香线蕉亚洲五| 男女无遮挡免费网站观看| 久久鲁丝午夜福利片| 亚洲av日韩在线播放| 亚洲色图 男人天堂 中文字幕| 成人国产av品久久久| 中文字幕av电影在线播放| 色婷婷久久久亚洲欧美| 国产亚洲一区二区精品| 丁香六月天网| 午夜福利,免费看| 国产亚洲精品久久久久5区| 91国产中文字幕| 可以免费在线观看a视频的电影网站| 成人影院久久| 精品久久久精品久久久| 日韩中文字幕欧美一区二区 | 嫁个100分男人电影在线观看 | 一边摸一边做爽爽视频免费| 日韩制服丝袜自拍偷拍| 热99久久久久精品小说推荐| 天天添夜夜摸| 69精品国产乱码久久久| 男女高潮啪啪啪动态图| 成年女人毛片免费观看观看9 | 国产主播在线观看一区二区 | 熟女少妇亚洲综合色aaa.| 久久热在线av| 一本久久精品| 亚洲国产欧美日韩在线播放| 国产xxxxx性猛交| 女性生殖器流出的白浆| 久久精品成人免费网站| 精品国产一区二区久久| 国产视频首页在线观看| 女人爽到高潮嗷嗷叫在线视频| 国产成人一区二区在线| 爱豆传媒免费全集在线观看| 美女国产高潮福利片在线看| 国产一卡二卡三卡精品| 别揉我奶头~嗯~啊~动态视频 | 两个人看的免费小视频| 老司机靠b影院| 久久99精品国语久久久| 熟女少妇亚洲综合色aaa.| 午夜福利影视在线免费观看| 天天躁夜夜躁狠狠躁躁| 欧美老熟妇乱子伦牲交| 老鸭窝网址在线观看| 狂野欧美激情性xxxx| 99久久综合免费| 亚洲精品中文字幕在线视频| 蜜桃在线观看..| 男的添女的下面高潮视频| 最新在线观看一区二区三区 | 女性被躁到高潮视频| 国产日韩欧美亚洲二区| 亚洲中文av在线| 亚洲天堂av无毛| 一区二区三区四区激情视频| 青春草视频在线免费观看| 亚洲伊人久久精品综合| 国产精品一区二区精品视频观看| 国产欧美日韩精品亚洲av| 在线av久久热| 一二三四在线观看免费中文在| 国产在线视频一区二区| 日韩制服骚丝袜av| 午夜激情av网站| 黄色一级大片看看| av网站在线播放免费| av不卡在线播放| 国产亚洲av片在线观看秒播厂| 亚洲av电影在线进入| 女警被强在线播放| 少妇猛男粗大的猛烈进出视频| 亚洲国产欧美日韩在线播放| 一二三四社区在线视频社区8| 两性夫妻黄色片| 欧美日韩视频高清一区二区三区二| 国产亚洲一区二区精品| 99久久人妻综合| 日韩熟女老妇一区二区性免费视频| 男人操女人黄网站| 成人影院久久| 一区二区三区激情视频| 国产午夜精品一二区理论片| 天天操日日干夜夜撸| 日韩av免费高清视频| 午夜福利影视在线免费观看| 国产野战对白在线观看| 你懂的网址亚洲精品在线观看| 国产97色在线日韩免费| 午夜福利影视在线免费观看| 在线观看人妻少妇| 国产伦人伦偷精品视频| 亚洲国产欧美在线一区| 国产老妇伦熟女老妇高清| 国产真人三级小视频在线观看| 亚洲欧美精品自产自拍| 91麻豆av在线| 欧美日韩精品网址| 国产精品久久久人人做人人爽| 日韩av不卡免费在线播放| 男女国产视频网站| 亚洲中文字幕日韩| 午夜福利乱码中文字幕| 视频在线观看一区二区三区| 久久影院123| 黄色 视频免费看| 人人妻人人澡人人爽人人夜夜| 极品人妻少妇av视频| 最近手机中文字幕大全| 在线观看一区二区三区激情| 永久免费av网站大全| 国产高清videossex| 亚洲精品中文字幕在线视频| 国产三级黄色录像| 首页视频小说图片口味搜索 | 另类精品久久| 久久久久精品人妻al黑| 亚洲国产精品一区二区三区在线| 国产成人欧美在线观看 | 日本猛色少妇xxxxx猛交久久| 国产精品免费视频内射| 国产一卡二卡三卡精品| 最黄视频免费看| av天堂久久9| 高清av免费在线| 精品国产一区二区三区四区第35| 又大又爽又粗| 免费一级毛片在线播放高清视频 | 国产熟女午夜一区二区三区| 99久久99久久久精品蜜桃| 日韩视频在线欧美| 亚洲精品久久久久久婷婷小说| av国产精品久久久久影院| 亚洲av成人不卡在线观看播放网 | 亚洲人成网站在线观看播放| 亚洲色图 男人天堂 中文字幕| 国产成人精品久久二区二区免费| 9热在线视频观看99| 国产精品二区激情视频| bbb黄色大片| 一边摸一边抽搐一进一出视频| 国产不卡av网站在线观看| 国产精品偷伦视频观看了| 热re99久久国产66热| 新久久久久国产一级毛片| 久久久亚洲精品成人影院| 丰满迷人的少妇在线观看| 99久久人妻综合| 久久久久久久久久久久大奶| 久久青草综合色| 搡老岳熟女国产| 制服诱惑二区| 2021少妇久久久久久久久久久| a级片在线免费高清观看视频| 国产欧美日韩综合在线一区二区| 2021少妇久久久久久久久久久| 欧美激情 高清一区二区三区| 成人黄色视频免费在线看| 亚洲自偷自拍图片 自拍| 亚洲av美国av| 狂野欧美激情性xxxx| 在线观看www视频免费| 欧美日韩亚洲综合一区二区三区_| 国产片内射在线| 精品人妻一区二区三区麻豆| 最新的欧美精品一区二区| 亚洲国产最新在线播放| 欧美变态另类bdsm刘玥| 伊人亚洲综合成人网| 久久99热这里只频精品6学生| 国产又爽黄色视频| 成人黄色视频免费在线看| 超碰成人久久| 亚洲成av片中文字幕在线观看| 两人在一起打扑克的视频| 国产精品免费视频内射| 亚洲人成77777在线视频| 搡老乐熟女国产| 极品少妇高潮喷水抽搐| 亚洲人成电影观看| av电影中文网址| 欧美人与善性xxx| 狂野欧美激情性xxxx| 美女视频免费永久观看网站| 叶爱在线成人免费视频播放| 可以免费在线观看a视频的电影网站| 亚洲av综合色区一区| 欧美精品一区二区大全| 午夜日韩欧美国产| 深夜精品福利| √禁漫天堂资源中文www| 男女午夜视频在线观看| 日本午夜av视频| 久久久久国产精品人妻一区二区| 99精国产麻豆久久婷婷| 久久久久久久精品精品| 一区二区日韩欧美中文字幕| 国产成人免费观看mmmm| 成人国产一区最新在线观看 | 狠狠精品人妻久久久久久综合| 日韩伦理黄色片| 午夜免费成人在线视频| 嫁个100分男人电影在线观看 | 国产精品国产av在线观看| 在线av久久热| 亚洲精品一区蜜桃| 亚洲人成电影免费在线| 在线观看www视频免费| 天天躁夜夜躁狠狠久久av| 我要看黄色一级片免费的| 久久精品人人爽人人爽视色| 我的亚洲天堂| 欧美老熟妇乱子伦牲交| 国产亚洲午夜精品一区二区久久| 波多野结衣av一区二区av| 欧美日韩视频精品一区| 午夜两性在线视频| 一级,二级,三级黄色视频| 五月天丁香电影| 香蕉丝袜av| 午夜91福利影院| 亚洲人成77777在线视频| 亚洲欧美中文字幕日韩二区| 国产精品国产三级专区第一集| 嫩草影视91久久| av又黄又爽大尺度在线免费看| 久久精品aⅴ一区二区三区四区| 欧美精品av麻豆av| 一本一本久久a久久精品综合妖精| 高潮久久久久久久久久久不卡|