DSQC354Simplified TCP/IP協(xié)議棧處理流程 Simplified TCP/IP協(xié)議棧接收數(shù)據(jù)包的過程就是解析數(shù)據(jù)包的過程。首先當(dāng)一個數(shù)據(jù)幀到達(dá)時,網(wǎng)絡(luò)接口控制程序?qū)⑵渥x入緩沖區(qū),檢查協(xié)議類型字段,如值依次為0x0800,表示數(shù)據(jù)域內(nèi)為IP包;值依次為0x0806,表示數(shù)據(jù)域內(nèi)為ARP包[6]。DSQC354由此以確定使用那種協(xié)議模塊來處理此分組。去掉以太網(wǎng)幀首部的數(shù)據(jù)包將被分配到IP緩存或者ARP緩存。接著,由IP協(xié)議處理模塊或ARP協(xié)議處理模塊繼續(xù)解析。
DSQC354根據(jù)包的類型,或者更新ARP地址映射表或者發(fā)送ARP應(yīng)答。IP協(xié)議處理模塊對數(shù)據(jù)包解析后,將數(shù)據(jù)交給UDP協(xié)議處理模塊或ICMP協(xié)議處理模塊。ICMP協(xié)議模塊會發(fā)回一個ICMP回顯應(yīng)答包。Simplified TCP/IP協(xié)議棧發(fā)送數(shù)據(jù)包的過程是封裝數(shù)據(jù)包的過程,數(shù)據(jù)經(jīng)過某層協(xié)議的處理,就會在數(shù)據(jù)包首部增加某種格式的頭部。在IP協(xié)議模塊處理數(shù)據(jù)包的過程,它要通過調(diào)用ARP協(xié)議獲得對方主機的物理地址。
Simplified TCP/IP協(xié)議棧處理流程如圖3所示。
圖3 DSQC354協(xié)議棧處理流程圖
5 總結(jié)與展望 為了驗證方案的可行性,實驗中以簡單圖像的傳輸為研究對象,檢驗Simplified TCP/IP協(xié)議棧的運行效果。從測試結(jié)果可看出,大流量的圖像傳輸系統(tǒng)中發(fā)生數(shù)據(jù)報的幾率還是比較大的。當(dāng)然,如果是應(yīng)用在數(shù)據(jù)流量不是很大,僅有一些少量數(shù)據(jù)和簡單的控制指令或反饋信息的應(yīng)用系統(tǒng)中,運行的情況會更好一些。 DSQC354目前Simplified TCP/IP協(xié)議棧技術(shù)還有一些不完善的地方。比如在數(shù)據(jù)量大的網(wǎng)絡(luò)中減小數(shù)據(jù)報的丟失率,更有效的進(jìn)行擁塞控制等,這些都是今后的努力方向。另外,還需要進(jìn)一步優(yōu)化代碼,提高SimplifiedTCP/IP協(xié)議棧的性能。
ASEA BROWN BOVERI R512H6B1N4NN1N NSPP R512H6B1N4NN1N
SQUARE D S174A NSFP S174A
MATEER BURT MBNVFDSVCW USPP MBNVFDSVCW
CUTLER HAMMER S801T30P3S USPP S801T30P3S
MODICON 92-00597-05 USPP 920059705
SIEMENS 6SE9-221-0DC40 NSFP 6SE92210DC40
FANUC A16B-0180-0260 USPP A16B01800260
WINSMITH 4CV USPP 4CV
FIREYE NX-280HW USPP NX280HW
SIEMENS 6ES5-945-7UA13 USPP 6ES59457UA13
SKALTEK DCD-120-4K USPP DCD1204K
GE FANUC IC647WMI620 NSFP IC647WMI620
ASEA BROWN BOVERI ACH550-UH-157A-4 USPP ACH550UH157A4
SYMAX 8030-RIM-121 FNFP 8030RIM121
ALLEN BRADLEY 1334-GOB USPP 1334GOB
JOSLYN CLARK 358454A-0004-S NSFP 358454A0004S
ALLEN BRADLEY 1775-KA NSFP 1775KA
SIEMENS 6ES5-243-1AA13 USPP 6ES52431AA13
MOORE PRODUCTS 39MBXNAN NSFP 39MBXNAN
ALLEN BRADLEY 150-B24NBDD-J1 NSFP 150B24NBDDJ1
SYMAX 8030-CRM-565 NSFP 8030CRM565
OMRON C500-CT041 NSFP C500CT041
ASEA BROWN BOVERI 57310001-CC USPP 57310001CC