国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

適用于文字書寫教學(xué)教室系統(tǒng)的嵌入式局域網(wǎng)協(xié)議

2014-06-06 10:46:47喻世東王求真
計(jì)算機(jī)工程 2014年9期
關(guān)鍵詞:重傳數(shù)據(jù)包嵌入式

喻世東,戴 永,王求真,李 璇,任 昆

(湘潭大學(xué)智能計(jì)算與信息處理教育部重點(diǎn)實(shí)驗(yàn)室,湖南湘潭411105)

適用于文字書寫教學(xué)教室系統(tǒng)的嵌入式局域網(wǎng)協(xié)議

喻世東,戴 永,王求真,李 璇,任 昆

(湘潭大學(xué)智能計(jì)算與信息處理教育部重點(diǎn)實(shí)驗(yàn)室,湖南湘潭411105)

針對(duì)以文字書寫教學(xué)裝置為終端的教室系統(tǒng)的數(shù)據(jù)傳輸要求和特性,分析已有協(xié)議處于該環(huán)境下所面臨的局限性,提出一種適合該類教室系統(tǒng)的嵌入式局域網(wǎng)協(xié)議CSELP。在以太網(wǎng)幀的基礎(chǔ)上擴(kuò)展8個(gè)字節(jié)實(shí)現(xiàn)確認(rèn)、超時(shí)重傳、流量控制等功能,提供面向連接的可靠傳輸服務(wù),簡(jiǎn)化數(shù)據(jù)處理和狀態(tài)機(jī)制;采用改進(jìn)的帶寬預(yù)估算法估計(jì)可用帶寬大小,在擁塞避免階段根據(jù)預(yù)測(cè)的窗口大小變化調(diào)整擁塞窗口;設(shè)計(jì)重傳隊(duì)列實(shí)現(xiàn)面向組的確認(rèn)機(jī)制,從而提高系統(tǒng)的實(shí)時(shí)性和傳輸效率。實(shí)驗(yàn)結(jié)果表明,該協(xié)議能滿足文字書寫教學(xué)教室系統(tǒng)的應(yīng)用需求,并且可推廣到非文字書寫教學(xué)的教室系統(tǒng)。

文字書寫教學(xué)裝置;教室系統(tǒng);嵌入式;以太網(wǎng);CSELP協(xié)議;數(shù)據(jù)傳輸

1 概述

隨著文字書寫教學(xué)系統(tǒng)單機(jī)技術(shù)的日臻成熟[1-3]與環(huán)境保護(hù)呼聲的增大,無紙化文字書寫教學(xué)、改革傳統(tǒng)文字書寫教學(xué)手段、普及信息技術(shù)的文字書寫教學(xué)教室系統(tǒng)的研究勢(shì)在必行。迄今為止,教室系統(tǒng)的研究較多地集中在虛擬教室[4]、多媒體[5]等上。文字書寫教學(xué)教室系統(tǒng)的學(xué)生終端多為嵌入式平臺(tái),將已有的其他學(xué)習(xí)內(nèi)容的教室系統(tǒng)方案直接套用于文字書寫教學(xué)教室系統(tǒng),在硬件需求和教學(xué)方式等諸多方面存在重要局限性,最突出的是局域網(wǎng)協(xié)議不適用問題。TCP/IP協(xié)議[6-7]在跨網(wǎng)段傳輸方面有優(yōu)勢(shì),無線傳感網(wǎng)絡(luò)協(xié)議[8-9]在環(huán)境、醫(yī)療等無線應(yīng)用領(lǐng)域中非常適用,工業(yè)總線協(xié)議[10]在串行傳輸方面?zhèn)鬏斔俣瓤?但這些協(xié)議在嵌入式系統(tǒng)構(gòu)成的局域網(wǎng)環(huán)境內(nèi),實(shí)時(shí)性、可靠性或適用性等方面存在一定局限性。文獻(xiàn)[11]關(guān)于局域網(wǎng)內(nèi)部嵌入式設(shè)備通信協(xié)議解決了報(bào)文封裝的冗余并壓縮了協(xié)議的處理層次,但是對(duì)于針對(duì)性提高局域網(wǎng)內(nèi)部通信速率和改進(jìn)擁塞控制方法沒有提出有效的對(duì)策。本文針對(duì)局域網(wǎng)內(nèi)部嵌入式設(shè)備實(shí)時(shí)通信鏈路狀態(tài)相對(duì)較好、硬件資源受限等特征,提出一種適合以文字書寫教學(xué)裝置為終端的教室系統(tǒng)局域網(wǎng)協(xié)議,即 CSELP(Classroom System Embedded LANProtocol)。該協(xié)議在以太網(wǎng)幀上擴(kuò)展了8比特字段的包頭,使用本地和遠(yuǎn)程的端口號(hào)和MAC地址來標(biāo)識(shí)一個(gè)連接,使用窗口和速率相結(jié)合的流控機(jī)制,提供面向連接的可靠傳輸服務(wù),參考UIP的實(shí)現(xiàn)方法并優(yōu)化了狀態(tài)機(jī)制、重傳隊(duì)列機(jī)制、確認(rèn)機(jī)制和擁塞控制算法。

2 體系結(jié)構(gòu)

文字書寫教室系統(tǒng)旨在實(shí)現(xiàn)集中進(jìn)行文字書寫教學(xué),系統(tǒng)的體系結(jié)構(gòu)如圖1所示。

圖1 教室系統(tǒng)體系結(jié)構(gòu)

作為文字書寫教學(xué)教室系統(tǒng)的工作過程具備3個(gè)基本特征:(1)教師可通過教師服務(wù)器既可同時(shí)向所有,也可選擇性向?qū)W生終端傳授教學(xué)內(nèi)容、布置書寫作業(yè)等;(2)學(xué)生終端只能單獨(dú)通過教師服務(wù)器向教師提問、請(qǐng)教等,而不能互傳作業(yè)內(nèi)容等;(3)學(xué)生作業(yè)可隨時(shí)提交,同時(shí)提交作業(yè)的人數(shù)不受限制。據(jù)此,教室系統(tǒng)由M臺(tái)嵌入式文字書寫練習(xí)機(jī)和一臺(tái)教師端服務(wù)器按星型拓?fù)浣Y(jié)構(gòu)組網(wǎng)。本文系統(tǒng)文字書寫教學(xué)終端為本實(shí)驗(yàn)室研制的文字書寫教學(xué)裝置,其核心功能是多文種、多格式兼容文字書寫教學(xué),與聯(lián)網(wǎng)相關(guān)的功能包括接受老師統(tǒng)一布置作業(yè)、作業(yè)保存或提交,在線提問等;教師服務(wù)器具有作業(yè)布置、批改評(píng)閱、在線答疑等功能。教室系統(tǒng)協(xié)議為本文所研究的CSELP協(xié)議,文字書寫教學(xué)終端與教師服務(wù)器相互協(xié)作,構(gòu)成文字書寫教學(xué)教室系統(tǒng)。

3 CSELP設(shè)計(jì)與實(shí)現(xiàn)

3.1 協(xié)議分析

教室系統(tǒng)運(yùn)行在一個(gè)相對(duì)較小的空間,它的數(shù)據(jù)流量都在本局域網(wǎng)內(nèi)部產(chǎn)生的。鑒于CSELP應(yīng)用的空間局限性,CSELP不采用網(wǎng)絡(luò)層協(xié)議提供路由,直接在數(shù)據(jù)鏈路層實(shí)現(xiàn),相比基于TCP/IP的協(xié)議棧極大的縮減了協(xié)議層次,減少了協(xié)議開銷。CSELP協(xié)議使用本地和遠(yuǎn)程的端口號(hào)和MAC地址來標(biāo)識(shí)一個(gè)連接。提供面向連接的可靠傳輸服務(wù),使用窗口和速率相結(jié)合的流控機(jī)制實(shí)現(xiàn)數(shù)據(jù)的高效傳輸。相比傳統(tǒng)的TCP/IP協(xié)議,可優(yōu)化狀態(tài)處理、重傳隊(duì)列機(jī)制、確認(rèn)機(jī)制和擁塞控制算法。

3.2 CSELP協(xié)議幀格式

以太網(wǎng)是目前局域網(wǎng)最通用的通信協(xié)議標(biāo)準(zhǔn),提供在局域網(wǎng)中設(shè)備間數(shù)據(jù)通信的功能,但是由于沒有窗口、確認(rèn)序列號(hào)、控制等字段,而無法提供確認(rèn)、超時(shí)重傳、流量控制等功能。鑒于教室系統(tǒng)網(wǎng)絡(luò)通信實(shí)時(shí)性和可靠性的需要,CSELP結(jié)構(gòu)如圖2所示。與通用Ethernet協(xié)議相比,本文協(xié)議幀結(jié)構(gòu)在數(shù)據(jù)字段的包頭增加2 Byte的發(fā)送、確認(rèn)序列號(hào)、1 Byte窗口、2 Byte的目的/源端口、1 Byte的控制字段和2 Byte的校驗(yàn)字段,壓縮TCP/IP協(xié)議棧結(jié)構(gòu)里的傳輸層和網(wǎng)絡(luò)層形成一個(gè)擴(kuò)展的協(xié)議棧,稱為CSELP協(xié)議棧,每一幀的封裝長(zhǎng)度最大值為MAC+ ELP僅有22 Byte。

圖2 CSELP幀結(jié)構(gòu)

3.3 數(shù)據(jù)處理及狀態(tài)轉(zhuǎn)換

協(xié)議棧系統(tǒng)緩沖區(qū)采用靜態(tài)分配的方式,參考UIP協(xié)議,定義一個(gè)發(fā)送緩沖區(qū)和一個(gè)接收緩沖區(qū),協(xié)議層之間的數(shù)據(jù)傳輸采用零拷貝技術(shù),數(shù)據(jù)在入棧以后只處理并封裝一次,由以太網(wǎng)驅(qū)動(dòng)發(fā)送,提高協(xié)議性能,同時(shí)也提高系統(tǒng)是實(shí)時(shí)性。數(shù)據(jù)包到達(dá)指定設(shè)備后通過逆向解析送達(dá)用戶進(jìn)程。

CSELP協(xié)議的數(shù)據(jù)傳輸分為3個(gè)階段:連接建立,數(shù)據(jù)傳輸和連接斷開。它的實(shí)現(xiàn)可以用狀態(tài)機(jī)來描述,在新的格式定義下,CSELP協(xié)議服務(wù)端和客戶端的狀態(tài)轉(zhuǎn)換如圖3所示。

協(xié)議采用了和TCP/IP相似的3次握手和4次關(guān)閉的信息交互結(jié)構(gòu),不同之處是它省略了連接超時(shí)狀態(tài),連接的每次狀態(tài)變換都基于當(dāng)前狀態(tài)和收到的數(shù)據(jù)包的標(biāo)志位來決定,狀態(tài)機(jī)循環(huán)在建立連接、傳輸數(shù)據(jù)、斷開連接等狀態(tài)間進(jìn)行轉(zhuǎn)化。

圖3 CSELP服務(wù)端和客戶端狀態(tài)機(jī)

3.4 流量控制和確認(rèn)機(jī)制

針對(duì)教室系統(tǒng)“瘦客戶端”、局域網(wǎng)內(nèi)部傳輸和數(shù)據(jù)主要為作業(yè)文件表現(xiàn)出連接數(shù)目很少變化、鏈路狀態(tài)相對(duì)較好和數(shù)據(jù)量大等方面的特點(diǎn),CSELP采用窗口和速率控制相結(jié)合的方法,改善鏈路流量穩(wěn)定性、文件傳輸速率等性能,提高帶寬利用率和減少擁塞。在收到確認(rèn)信號(hào)之前最多可以發(fā)送的包的數(shù)目由接收方的窗口大小W確定,每發(fā)送一個(gè)包,窗口大小W減1,如果W為0,那么停止發(fā)送數(shù)據(jù)包,直到W重新變?yōu)榉?。

在文獻(xiàn)[12-13]的基礎(chǔ)上,采用改進(jìn)的帶寬預(yù)估算法,根據(jù)收到ACK數(shù)據(jù)包速率也即數(shù)據(jù)包往返時(shí)(RTT)延估計(jì)可用帶寬大小,調(diào)整擁塞窗口值的大小。假設(shè)時(shí)間區(qū)間[t,t+Δt]內(nèi),ACK回應(yīng)的數(shù)據(jù)字節(jié)數(shù)為[SeqNum(t),SeqNum(t+Δt)],則可用網(wǎng)絡(luò)帶寬ABW(t)為:

若 Δt→0,ABW(t)可看作SeqNum(t)的導(dǎo)數(shù),即:

其中,WinNum表示窗口數(shù)量也即發(fā)送端數(shù)量,對(duì)于小學(xué)課堂教學(xué),學(xué)生數(shù)目即連接的終端數(shù)目在同一節(jié)課中一般不會(huì)變化,且Δt→0,所以WinNum為常數(shù);WinSize(t)表示窗口大小,為了充分利用網(wǎng)絡(luò)而又避免擁塞,使ABW(t)與SBW(t)取值相同,則:

式(4)可轉(zhuǎn)化為:

為了預(yù)測(cè)窗口大小變化趨勢(shì),對(duì)式(5)兩邊求導(dǎo),得:

離散化可得:

其中,ΔWinSize為窗口大小變化量;RTT(t+Δt)為當(dāng)前時(shí)刻RTT采樣值;RTT(t)為前一次采樣值;SeqNum′(t+Δt)表示當(dāng)前網(wǎng)絡(luò)帶寬。此擁塞控制算法中,RTT的采樣值非常重要,取值不當(dāng)會(huì)影響帶寬估計(jì)的準(zhǔn)確性,招致錯(cuò)誤判斷。在網(wǎng)絡(luò)傳輸過程中,偶然因素會(huì)導(dǎo)致少數(shù)網(wǎng)絡(luò)延遲或丟包,并不代表實(shí)際擁塞狀況,采樣RTT時(shí)應(yīng)對(duì)此進(jìn)行區(qū)別,采用3次采樣取最小值的機(jī)制消除偶然因素的影響。發(fā)送端的擁塞窗口為cwnd,接收端窗口為rwnd,發(fā)送窗口大小為min(cwnd,rwnd),rwnd為接收端決定,網(wǎng)絡(luò)環(huán)境對(duì)其沒有影響,所以擁塞控制的方法就是調(diào)整cwnd的大小。擁塞控制算法的主要步驟如下:

(1)慢啟動(dòng)階段:采用式(7)里的3次最小RTT采樣值得到往返時(shí)延RTTmin;設(shè)置與RTTmin對(duì)應(yīng)的超時(shí)時(shí)間,慢啟動(dòng)閥值ssthresh初始化為rwnd;cwnd初始化為1;并根據(jù)AIMD算法(和式增加,積式減少)調(diào)整cwnd大小:每經(jīng)過一個(gè)RTT時(shí)間,cwnd(t+RTT)←2×cwnd(t),當(dāng)cwnd=ssthresh,轉(zhuǎn)步驟(2)。

(2)擁塞避免階段:采用式(7)中的ΔWinSize調(diào)整cwnd大小;cwnd(t+Δt)←cwnd(t)+ΔWinSize。

(3)發(fā)送數(shù)據(jù)包c(diǎn)selps后,如果RTTmin時(shí)間內(nèi)沒有收到cselps的ack確認(rèn),表明發(fā)生網(wǎng)絡(luò)擁塞導(dǎo)致丟包,重傳丟失的數(shù)據(jù)包c(diǎn)selps,同時(shí)采用AIMD算法調(diào)整cwnd大小:cwnd←cwnd/2,然后跳轉(zhuǎn)到步驟(1)。

針對(duì)局域網(wǎng)鏈路狀態(tài)相對(duì)較好的情況,采用面向組的確認(rèn)機(jī)制,接收方收到數(shù)據(jù)包后,以組為單位發(fā)送確認(rèn),每發(fā)送一個(gè)數(shù)據(jù)包,包頭的序列號(hào)加1,發(fā)送方收到確認(rèn)包后,在重傳隊(duì)列刪除對(duì)應(yīng)的數(shù)據(jù)包組,另外發(fā)送方也需要更新發(fā)送窗口。發(fā)起連接和結(jié)束連接的命令幀都占用一個(gè)序列號(hào),通過檢查校驗(yàn)碼來確定數(shù)據(jù)包是否完整。使用反向確認(rèn),如果接收方檢測(cè)到包丟失或者損壞,接收方將發(fā)回一個(gè)反向確認(rèn),請(qǐng)求對(duì)方重發(fā)。

3.5 錯(cuò)誤檢測(cè)與恢復(fù)

每個(gè)數(shù)據(jù)包的包頭都有一個(gè)序列號(hào),每發(fā)送一個(gè)數(shù)據(jù)包序列號(hào)加1,接收方按序列號(hào)對(duì)數(shù)據(jù)包進(jìn)行排序,根據(jù)序列號(hào)來判斷是否有亂序與重復(fù)發(fā)生,并根據(jù)CRC校驗(yàn)來檢測(cè)錯(cuò)誤,對(duì)丟失或者出錯(cuò)的包進(jìn)行重傳。

CSELP重傳隊(duì)列的設(shè)計(jì):發(fā)送端利用鏈表記錄每組已發(fā)出的CSELP數(shù)據(jù)包,而收到CSELP確認(rèn)報(bào)文時(shí)從該鏈表中刪除相應(yīng)的CSELP數(shù)據(jù)包組。同時(shí)設(shè)定一個(gè)定時(shí)器,每隔一段時(shí)間響應(yīng)一次,發(fā)送隊(duì)列中已經(jīng)超時(shí)的所有CSELP數(shù)據(jù)包。鏈表結(jié)構(gòu)如圖4所示,每個(gè)連接Con[i]單獨(dú)維護(hù)一個(gè)ELP重傳隊(duì)列cselp_resend。該重傳隊(duì)列采用一個(gè)如圖4所示的雙層鏈表來存儲(chǔ),第一層為一個(gè)cselp_remxit結(jié)構(gòu)體,存儲(chǔ)可能需要重傳的數(shù)據(jù)包的相關(guān)信息,字段m_timer是該包的定時(shí)器,字段renum記錄該包重傳的次數(shù),字段cselpdata是一個(gè)結(jié)構(gòu)體包含數(shù)據(jù)包的具體內(nèi)容。m個(gè)cselp_remxit結(jié)構(gòu)體組成一個(gè)數(shù)據(jù)包組,放在一個(gè)vector容器中作為重傳鏈表的一個(gè)節(jié)點(diǎn),這種設(shè)計(jì)結(jié)構(gòu)能在發(fā)送數(shù)據(jù)包后直接將該包連接到此重傳隊(duì)列后面,便于接收到確認(rèn)后刪除數(shù)據(jù)包組也便于重傳操作。

圖4 CSELP的重傳隊(duì)列結(jié)構(gòu)

3.6 CSELP主要算法

CSELP的實(shí)現(xiàn)涉及數(shù)據(jù)頭定義、封裝格式和擁塞控制、確認(rèn)機(jī)制、超時(shí)重傳等功能模塊,確認(rèn)機(jī)制和超時(shí)重傳關(guān)乎系統(tǒng)能否實(shí)現(xiàn)可靠的數(shù)據(jù)傳輸服務(wù)以及作業(yè)文件傳輸?shù)乃俾蚀笮 ?/p>

設(shè)組大小為m,連接con的接收隊(duì)列為recvbuf,則con的ack確認(rèn)方法如下:

算法1 面向組的確認(rèn)實(shí)現(xiàn)

輸入 m,con

輸出 ack

每個(gè)連接con[i]都有一個(gè)如圖4所示的重傳隊(duì)列cselp_ resend,則con[i]的重傳數(shù)據(jù)包c(diǎn)selps由如下算法獲得。

算法2 超時(shí)重傳的實(shí)現(xiàn)

輸入 con[i]

輸出 cselps

3.7 CSELP的協(xié)議效率分析

協(xié)議效率即信道(鏈路)利用率用E表示,成功發(fā)送一幀平均所需時(shí)間為Ts,發(fā)送每幀數(shù)據(jù)平均所需時(shí)間為Tt,E=Ts/Tt。

以L表示數(shù)據(jù)幀的比特長(zhǎng)度,ACK或NAK信息幀的長(zhǎng)度為ta比特;一個(gè)數(shù)據(jù)幀的傳輸時(shí)間為ta(稱一幀時(shí)),ACK幀或NAK幀的傳輸時(shí)間為ta;幀經(jīng)過鏈路的傳播時(shí)延為TF=tp+tf,即物理鏈路距離d除以傳播速率v,而傳播速率和光速是同一數(shù)量級(jí)的,因此傳播時(shí)延對(duì)于數(shù)據(jù)幀和ACK(NAK)幀在兩個(gè)方向上是相同的,但是傳輸一幀的時(shí)間與幀的長(zhǎng)度有關(guān),對(duì)于數(shù)據(jù)幀和ACK幀是不相同的。

(1)理想線路上的信道利用率

定義λ=tp/tf,按幀傳輸時(shí)間歸一化,則:

考慮到滑動(dòng)窗口的存在,令窗口大小為W,根據(jù)式(10),可以得到鏈路的利用率為:

(2)有差錯(cuò)線路的信道利用率

在有錯(cuò)誤的情況下,一個(gè)組可能要經(jīng)過多次傳輸才能成功,式(10)的分母乘以傳輸?shù)拇螖?shù)就得到有差錯(cuò)線路上的效率Ee,有:

其中,Nr表示一個(gè)組重傳的次數(shù),假設(shè)P為任何一幀出錯(cuò)的概率,且不同幀的差錯(cuò)是相互獨(dú)立的,則一個(gè)組m幀數(shù)據(jù)不出錯(cuò)誤的概率為(1-P)m,出錯(cuò)的概率為(1-(1-P)m),則當(dāng)某一組傳輸成功時(shí),需要j次傳輸?shù)母怕蕿?j-1)次不成功的概率乘以最后一次成功的概率,為(1-(1-P)m)j-1(1-P)m。由此表明傳輸次數(shù)存在一種幾何概率分布,為簡(jiǎn)化計(jì)算,假設(shè)應(yīng)答信號(hào)不會(huì)出錯(cuò),有:

式(13)變?yōu)?

同理,考慮到滑動(dòng)窗口的存在,協(xié)議的最大效率為:

4 CSELP的實(shí)時(shí)性能分析

教室系統(tǒng)用于課堂教學(xué),課堂時(shí)間有限,教學(xué)內(nèi)容的傳輸必須滿足實(shí)時(shí)性要求,即教師布置作業(yè)以及、學(xué)生的作業(yè)提交等的數(shù)據(jù)傳輸速度越快越好。

4.1 數(shù)據(jù)一次傳輸最大時(shí)延

如果數(shù)據(jù)一次傳輸成功,則一個(gè)數(shù)據(jù)從封裝到傳輸至主機(jī)的時(shí)間,由數(shù)據(jù)成幀時(shí)間TF、路由轉(zhuǎn)發(fā)時(shí)間Tt與線路傳輸時(shí)延Td之和組成。

數(shù)據(jù)幀中封裝的數(shù)據(jù)量決定成幀時(shí)間。根據(jù)教育部有關(guān)規(guī)定[14],小學(xué)班級(jí)人數(shù)在45人~55人之間,本系統(tǒng)選擇60個(gè)客戶節(jié)點(diǎn),數(shù)據(jù)幀傳輸時(shí)選取最大幀長(zhǎng)1 518 Byte,其中攜帶的有效數(shù)據(jù)長(zhǎng)度1 492 Byte,成幀時(shí)間為ns級(jí),可以忽略。

系統(tǒng)的數(shù)據(jù)通道建立以后,傳輸至主機(jī)的數(shù)據(jù)率為 12.5 MB/s,即數(shù)據(jù)在節(jié)點(diǎn)的發(fā)送時(shí)間為121.44 μs;由于擁塞控制采用隊(duì)列策略,因此最大累記轉(zhuǎn)發(fā)時(shí)間Tt=1 518×60/12.5=7.286 4 ms。

根據(jù)文獻(xiàn)[15],小學(xué)教室最大前后間距一般為10 m,左右間距為6 m,則教室內(nèi)服務(wù)端和終端最大距離為10+6/2=13 m,則Td=s×ts=13×2× 0.006=0.156 μs(s為距離,ts為電信號(hào)在雙絞線中的單位傳輸時(shí)延0.006 μs/m),以上三部分構(gòu)成數(shù)據(jù)一次傳輸?shù)淖畲髸r(shí)延T0=TF+Tt+Td= 7.286 5 ms。

4.2 數(shù)據(jù)一次重傳最大時(shí)延T1

數(shù)據(jù)幀在傳送過程中任1位出現(xiàn)誤碼將導(dǎo)致整幀重傳,本系統(tǒng)使用的命令幀長(zhǎng)為22 Byte。重傳命令從主機(jī)到出錯(cuò)節(jié)點(diǎn)所需時(shí)間包括命令幀送出時(shí)間Ts及線路傳輸時(shí)延。按100 Mb/s計(jì)算,命令幀送出時(shí)間Ts=22×60/12.5=0.105 6 ms,而最大傳輸時(shí)延仍為Td=0.12 μs,因此,總計(jì)一個(gè)命令幀從主機(jī)到節(jié)點(diǎn)的最大時(shí)延是Ts+Td=7.286 5 ms。誤碼重傳一次情況下,最終的最大時(shí)延為:T1=T0+Ts+Td+Tt+Td=14.678 8 ms。

4.3 每幀誤碼率q和平均重傳次數(shù)Rk

客戶節(jié)點(diǎn)每個(gè)節(jié)點(diǎn)(由物理層硬件保證)的誤碼率為2×10-12,假設(shè)每個(gè)節(jié)點(diǎn)數(shù)據(jù)幀中每一位誤碼率相同,由于每個(gè)數(shù)據(jù)幀有1 518比特,數(shù)據(jù)幀的正確率為p=(1-2×10-12)1518≈1-1 518×2×10-12≈0.999 999 996 9,從而該數(shù)據(jù)幀整體誤碼率q=1-p=3.1×10-9。

假設(shè)某幀重傳了ξ次才傳送正確,則:

此時(shí)平均重傳次數(shù):

如發(fā)現(xiàn)錯(cuò)誤需要重傳,平均重傳1.000 000 003次可保證正確。

5 實(shí)驗(yàn)測(cè)試

文字書寫教學(xué)裝置為前文所述嵌入式多功能、多文種兼容、多書寫格式練習(xí)的文字書寫教學(xué)系統(tǒng),嵌入式終端主要硬件模塊為 S3C2440,32 bit ARM920T內(nèi)核,7英寸觸摸屏,標(biāo)準(zhǔn)配置64 MB_ NAND_FLASH,標(biāo)準(zhǔn)配置64MB SDRAM以及DM9000A 100Mbps以太網(wǎng)控制器。實(shí)驗(yàn)教室按擺放60臺(tái)學(xué)生終端設(shè)計(jì),離教師終端服務(wù)器最遠(yuǎn)的終端距離為13 m,最近的終端距離為2 m,平均終端距離為6 m。教師終端服務(wù)器為一臺(tái)4核CPU、4 GB內(nèi)存、1 Gb/s網(wǎng)卡的聯(lián)想PC機(jī)。服務(wù)器端軟件環(huán)境為Windows,學(xué)生端軟件環(huán)境為WINCE。實(shí)驗(yàn)使用文字書寫教學(xué)終端為3個(gè),分別布置在具有代表意義的節(jié)點(diǎn)及距離位置,13 m一個(gè)終端,2 m一個(gè)終端,6 m一個(gè)終端。通過多次文件傳輸測(cè)試,窗口大小W取200,數(shù)據(jù)包組大小m取40時(shí)能明顯的減少文件傳輸所花時(shí)間,同時(shí)又不占用太多內(nèi)存。教師終端布置作業(yè)測(cè)試和學(xué)生終端提交作業(yè)實(shí)驗(yàn)部分實(shí)驗(yàn)截圖如圖5所示,圖5(a)所示是上位機(jī)選取向?qū)W生終端布置的內(nèi)容,經(jīng)過點(diǎn)擊布置按鈕操作后,圖5(b)為學(xué)生終端接收后的界面截圖,圖5(c)為學(xué)生終端提交作業(yè)時(shí)的界面截圖,圖5(d)為教師端服務(wù)器接收作業(yè)文件時(shí)的工作界面,顯示了作業(yè)文件名稱、文件大小、存放路徑和接收進(jìn)度,圖5(e)為教師端發(fā)送作業(yè)文件時(shí)的工作界面,顯示了連接服務(wù)端的學(xué)生端信息、作業(yè)文件信息和發(fā)送進(jìn)度。

圖5 實(shí)驗(yàn)效果

通過CSELP協(xié)議讓1臺(tái)、2臺(tái)、3臺(tái)練習(xí)機(jī)同時(shí)提交一個(gè)1.09 MB的作業(yè)文件,然后服務(wù)端同時(shí)下發(fā)作業(yè)文件,分別統(tǒng)計(jì)所花時(shí)間,測(cè)試結(jié)果如表1所示。

表1 學(xué)生端發(fā)送和接收作業(yè)時(shí)間 ms

對(duì)比實(shí)驗(yàn):分別編寫PC端和WINCE端的MFC測(cè)試程序,功能主要包括可配置協(xié)議類型收發(fā)文件、計(jì)時(shí)。關(guān)閉上位機(jī)和嵌入式終端的其他應(yīng)用程序,在實(shí)驗(yàn)教室中用一臺(tái)距離上位機(jī)13 m的嵌入式終端通過測(cè)試程序用CSELP和TCP/IP向上位機(jī)發(fā)送不同大小的文件,分別統(tǒng)計(jì)發(fā)送這些文件所需時(shí)間,測(cè)試結(jié)果如圖6所示?,F(xiàn)有以太網(wǎng)由于不具備連接標(biāo)識(shí)功能以及數(shù)據(jù)傳輸可靠性保證,和CSELP在文件傳輸方面無法直接比較。

圖6 CSELP和TCP/IP協(xié)議性能對(duì)比

從表1中嵌入式終端發(fā)送作業(yè)和接收作業(yè)的平均時(shí)間來看,客戶終端的增加對(duì)文件傳輸所需時(shí)間影響很小,由此可以推斷60臺(tái)嵌入式終端同時(shí)傳輸文件服務(wù)器也能很快的接收完畢,服務(wù)端通過CSELP協(xié)議可以很好的完成教室系統(tǒng)的數(shù)據(jù)通信任務(wù)。

從圖6可以看出,由于從封裝長(zhǎng)度、流量控制和確認(rèn)機(jī)制都經(jīng)過針對(duì)性的設(shè)計(jì),CSELP協(xié)議在文件傳輸速率方面具有優(yōu)勢(shì),文件越大優(yōu)勢(shì)越明顯。而且由于采用面向組的確認(rèn)機(jī)制,減少了上位機(jī)接收文件時(shí)確認(rèn)數(shù)據(jù)包的發(fā)送數(shù)目,縮小了上位機(jī)的網(wǎng)絡(luò)利用率,減少了多學(xué)生端同時(shí)發(fā)送文件時(shí)上位機(jī)出現(xiàn)擁塞的概率。

6 結(jié)束語

隨著信息技術(shù)的普及與數(shù)字化校園的建設(shè),需要對(duì)可以節(jié)約大量書寫用紙與提高教學(xué)效率的文字書寫教學(xué)教室系統(tǒng)進(jìn)行研究。本文就單間標(biāo)準(zhǔn)學(xué)生數(shù)目教室實(shí)現(xiàn)文字書寫教學(xué)終端局域聯(lián)網(wǎng)開展探討,設(shè)計(jì)了與以文字書寫教學(xué)裝置為終端相適用的CSELP,主要有以下特點(diǎn):(1)提出改進(jìn)的帶寬預(yù)估方法解決擁塞控制的問題;(2)利用重傳隊(duì)列實(shí)現(xiàn)了面向數(shù)據(jù)包組的確認(rèn)以及超時(shí)重傳,提高了通信效率。

[1] 戴 永,劉任任,王求真,等.可聯(lián)網(wǎng)交互的多功能規(guī)定格式習(xí)字系統(tǒng)及方法:中國(guó),ZL201010149767.2 [P].2010-09-01.

[2] 呂 軍.電化教學(xué)多功能寫作裝置與系統(tǒng):中國(guó), ZL201010197425.8[P].2010-10-06.

[3] Karov Z Y.System for Teaching Writing Based on a Users Past Writing:USA,ZL2011086331A1[P].2011-04-14.

[4] Glava C C,Glava A E.Case Study of Initial Primary Teachers Training at Babes-bolyai University of Clujnapoca[J].ProcediaComputerScience,2011,3: 672-676.

[5] 朱志豪,湯勇明,王保平.一種基于IPTV技術(shù)的網(wǎng)絡(luò)教室系統(tǒng)設(shè)計(jì)[J].電子器件,2009,32(1):161-164.

[6] Dunkels A.Minimal TCP/IP Implementation with Proxy Support[R].Swedish,Stockholm:Swedish Institute of Computer Science,Technical Report:SICI T-2001: 20CS,2001.

[7] Dunkels A.Full TCP/IP for 8-bit Architectures[C]// Proceedings of the 1st InternationalConference on Mobile Applications.San Francisco,USA:[s.n.], 2003:125-133.

[8] Stankovic J A.Wireless Sensor Networks[J].IEEE Computer,2008,41(10):92-95.

[9] 馬 濤,單 洪,陳 娟.異構(gòu)無線傳感器網(wǎng)絡(luò)的基礎(chǔ)層MAC協(xié)議設(shè)計(jì)[J].計(jì)算機(jī)工程,2013,39(7):137-141.

[10] 張玉萍,佟為明,李 辰.LonWorks總線實(shí)時(shí)通信協(xié)議的研究[J].儀器儀表學(xué)報(bào),2009,30(8):1783-1788.

[11] 宋 波,賈智平,李 新.基于LLC的嵌入式局域網(wǎng)協(xié)議棧設(shè)計(jì)[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(23): 4939-4943.

[12] Ma Xiaodong,Su Xiao.A New TCP Congestion Control Algorithm for Media Streaming[C]//Proceedings of ICME'09.[S.1.]:IEEE Press,2009:746-749.

[13] Li Gui,Yu Chu,Fidge C.A Conditional Retransmission Enabled Transport Protocol for Real-time Networked Control Systems[C]//Proceedings of the 36th IEEE LCN'11.[S.1.]:IEEE Press,2011:231-234.

[14] 中華人民共和國(guó)教育部.教育部關(guān)于貫徹《國(guó)務(wù)院辦公廳轉(zhuǎn)發(fā)中央編辦、教育部、財(cái)政部關(guān)于制定中小學(xué)教職工編制標(biāo)準(zhǔn)意見的通知》的實(shí)施意見[Z].2002.

[15] 中國(guó)標(biāo)準(zhǔn)委員會(huì).GB-50099-2011中小學(xué)建筑設(shè)計(jì)規(guī)范[S].2011.

編輯 索書志

Embedded LAN Protocol for Text Writing Teaching Classroom System

YU Shi-dong,DAI Yong,WANG Qiu-zhen,LI Xuan,REN Kun
(Key Laboratory of Intelligent Computing and Information Processing,Ministry of Education, Xiangtan University,Xiangtan 411105,China)

According to the requirements and features of data transmission in a classroom system with writing teaching equipment for terminal,across analyzing the limitations of other protocols under this situation,an embedded LAN protocol is proposed based on Ethernet,which is suitable for the classroom system CSELP.Both the real-time performance and transmission efficiency are improved.Data frame expansion of 8 Byte achieves recognition,retransmission,flow control and other functions to provide connection-oriented reliable transmission service,and the data processing and sates method are simplified.The size of available bandwidth with improved bandwidth estimate algorithm is estimated and the congestion window by the prediction window size change in congestion avoidance is adjusted.The new design retransmission queue is used to implement the package-based ACK mechanism.Example application result shows that the protocol can satisfy the application requirements of the writing teaching classroom system,and can spread to other nonwriting teaching classroom system.

text writing teaching device;classroom system;embedded;Ethernet;CSELP protocol;data transmission

1000-3428(2014)09-0284-07

A

TP393

10.3969/j.issn.1000-3428.2014.09.057

湖南省教育廳基金資助項(xiàng)目(13C914);湖南省“十二五”重點(diǎn)學(xué)科建設(shè)基金資助項(xiàng)目。

喻世東(1989-),男,碩士研究生,主研方向:知識(shí)處理,智能系統(tǒng);戴 永,教授;王求真,講師;李 璇、任 昆,碩士研究生。

2013-09-10

2013-10-31E-mail:yushidong@foxmail.com

猜你喜歡
重傳數(shù)據(jù)包嵌入式
SmartSniff
面向異構(gòu)網(wǎng)絡(luò)的多路徑數(shù)據(jù)重傳研究?
搭建基于Qt的嵌入式開發(fā)平臺(tái)
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
數(shù)據(jù)鏈路層的選擇重傳協(xié)議的優(yōu)化改進(jìn)
基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計(jì)與實(shí)現(xiàn)
Altera加入嵌入式視覺聯(lián)盟
倍福 CX8091嵌入式控制器
視覺注意的數(shù)據(jù)包優(yōu)先級(jí)排序策略研究
MPTCP中一種減緩緩存阻塞的重傳策略
乐至县| 始兴县| 凉城县| 凌海市| 肃北| 丰原市| 韶山市| 图木舒克市| 涿州市| 河源市| 阳城县| 西畴县| 五台县| 伊川县| 两当县| 双辽市| 全南县| 彭泽县| 泰安市| 汨罗市| 长阳| 武山县| 迁安市| 磐石市| 中西区| 荔波县| 临沭县| 喀喇沁旗| 宝坻区| 修武县| 布尔津县| 玛曲县| 武川县| 武夷山市| 沁水县| 黄浦区| 崇义县| 建始县| 菏泽市| 无棣县| 博兴县|