99久久99久久精品免费看蜜桃,亚洲国产成人精品青青草原,少妇被粗大的猛烈进出va视频,精品国产不卡一区二区三区,人人人妻人人澡人人爽欧美一区

首頁 > 文章中心 > tcp協(xié)議

tcp協(xié)議

前言:想要寫出一篇令人眼前一亮的文章嗎?我們特意為您整理了5篇tcp協(xié)議范文,相信會為您的寫作帶來幫助,發(fā)現(xiàn)更多的寫作思路和靈感。

tcp協(xié)議

tcp協(xié)議范文第1篇

關(guān)鍵詞:P2P;CDP;NAT 穿透;基于UDP的tcp

中圖分類號:TP317文獻標識碼:A 文章編號:1009-3044(2007)03-10736-02

1 引言

隨著互聯(lián)網(wǎng)應用廣泛推廣,基于各種P2P網(wǎng)絡技術(shù)的產(chǎn)品也越來越多的出現(xiàn)在我們的視野當中。從最早的Napster 到現(xiàn)在的Bittorrent、eMule、skype等產(chǎn)品,P2P這種網(wǎng)絡應用模式已經(jīng)從各個方面深入人心。這些產(chǎn)品在網(wǎng)絡實現(xiàn)技術(shù)上,都以各自的方法解決著同樣面臨的一個問題,如何讓他們的軟件產(chǎn)品在各異的網(wǎng)絡拓撲結(jié)構(gòu)中順利的進行P2P通信。

眾所周知,在當今的網(wǎng)絡拓撲結(jié)構(gòu)中,普遍使用NAT設備來進行網(wǎng)絡地址轉(zhuǎn)換,那么如何讓應用程序跨越這些NAT設備進行全雙工通信,就成為非常重要的問題。實現(xiàn)跨越NAT 通信有很多種辦法:首先是通過服務器進行轉(zhuǎn)發(fā),這是比較粗暴的方法,在用戶量較大時,轉(zhuǎn)發(fā)服務器需要付出相當大的代價;其次,可以使用NAT 穿透技術(shù)。而在NAT 穿透中,UDP 穿透的成功率比起TCP 穿透要高出許多[1]。因此在UDP 協(xié)議上構(gòu)建一些大型的網(wǎng)絡應用程序可能會成為很多人的需求。

由于UDP協(xié)議本身存在通信不可靠的缺點,對于基于UDP 進行可靠通信的需求就浮現(xiàn)出來了。目前在網(wǎng)絡上有許多人正在做著這一工作,UDT、RakNet、eNet 等都是構(gòu)建在UDP之上的網(wǎng)絡可靠通信開發(fā)庫,但這些庫都是針對一些特殊應用進行設計的,不具備通用性。本文提出的CDP協(xié)議是在UDP基礎(chǔ)之上實現(xiàn)的TCP協(xié)議。同時具備了TCP的通用、高效和UDP的高穿透成功率,并提供了簡單易用的應用程序開發(fā)接口。

2 CDP設計目標

CDP主要的目標就是在UDP 層之上實現(xiàn)TCP 的協(xié)議算法,使得應用程序能夠在UDP 層之上獲得通用、可靠、高效的通信能力。CDP 網(wǎng)絡開發(fā)庫所實現(xiàn)的算法,都來自久經(jīng)考驗的TCP協(xié)議算法,以下協(xié)議設計部分主要講解CDP實現(xiàn)中與TCP標準不同的部分。

3 CDP協(xié)議設計

CDP協(xié)議主要在以下幾個方面與TCP有所不同:協(xié)議格式、連接建立(NAT UDP PUNCH模式)、?;顧C制、MTU發(fā)現(xiàn)與MSS通告。其他部分,如報文傳輸、流量控制、超時重傳、擁塞控制等,均參照TCP協(xié)議實現(xiàn)[2]。下面將對幾個不同部分分別進行說明。

3.1 協(xié)議格式

CDP的實現(xiàn)的算法雖然與TCP 實現(xiàn)的算法是大致相同的,但CDP 的協(xié)議格式只是從TCP協(xié)議格式獲得參考,但并不完全與他相同,CDP協(xié)議格式如圖1所示。

圖中各字段意義分別為:

4 位首部長度:表示用戶數(shù)據(jù)在數(shù)據(jù)包中的起始位置。

LIV:連接?;顦酥?。

ACK:確認序號有效。

PSH:接收方應該盡快將這個報文段交給應用層。

RST:重置連接。

SYN:同步序號,用來發(fā)起一個連接。

FIN:發(fā)端完成發(fā)送任務。

16 位窗口大小:接收端可接收數(shù)據(jù)的窗口大小。

選項:只有一個選項字段,為最長報文大小,即MSS。CDP 選項格式與TCP 選項格式一致,kind=0 時表示選項結(jié)束,kind=1 時表示無操作,kind=2 時表示最大報文段長度。如下圖:

圖2 CDP選項字段

數(shù)據(jù):用戶通過CDP 傳輸?shù)臄?shù)據(jù)。

3.2 連接建立(NAT UDP PUNCH模式)

一般情況下,CDP連接的建立過程與TCP相同。但當CDP工作在UDP NAT 穿透(NAT UDP PUNCH)模式下時,在三次握手之前,先要向?qū)Χ薔AT 端口及預測端口以默認2ms的間隔發(fā)送默認為10個LIV報文,一來用于打開自已的NAT 端口,二來是用于進入對端NAT端口。默認值可以由用戶程序設置。這時的LIV 報文中初始序號及確認序號都為0。

當接收到對端LIV 報文后,CDP立即停止LIV 報文發(fā)送,發(fā)出SYN 報文進行連接建立。這時有兩種可能:一是對端直到接收到該SYN 報文,都沒有接收到LIV 報文,或是剛接收到LIV報文,但沒有來得及發(fā)送SYN 報文,此時將會和一般模式下連接建立的過程一致,經(jīng)歷三次握手;二是對端在接收到該SYN 報文之前,也已經(jīng)發(fā)送SYN報文,此時雙方都需要對SYN 報文段進行確認。

3.3 半打開連接及連接?;?/p>

半打開連接是指對端異常關(guān)閉,如網(wǎng)線拔掉、突然斷電等情況導致一端關(guān)閉,而另一端卻認為連接仍處于打開當中,這種情況稱之為半打開連接。CDP中的一個TDP SOCKET描述符由本地IP、本地端口、遠端IP、遠端端口唯一確定。當遠端客戶端連接請求到來時,服務端將接收到一個新的CDP SOCKET描述符,當這一個描述符唯一確定信息已經(jīng)存在時,對新的連接請求發(fā)送RST 報文段,通知其重置連接請求。對于舊的連接,由保活機制自動發(fā)現(xiàn)是否為半打開連接,如果是半打開連接,則自動關(guān)閉該連接。CDP的RST 報文與TCP 中的RST 報文是不一樣的。

連接建立之后,CDP 連接需要啟動?;顧C制。TCP 連接在沒有數(shù)據(jù)通信的情況下也能保持連接,但CDP 連接不行。CDP 連接在一定時間內(nèi)如果沒有數(shù)據(jù)交互的話,將主動發(fā)送?;頛IV報文段。這個時間根據(jù)CDP 連接工作模塊不同有所差異,在NAT UDP PUNCH 模式下,默認值為1 分鐘(大多數(shù)的NAT中,UDP會話超時時間為2-5分鐘左右);而在常規(guī)模塊下這個時間段默認值為5分鐘。默認值可以由用戶程序設置,用戶程序需要指明兩種模式下的?;顣r間周期。

3.4 路徑MTU 發(fā)現(xiàn)及MSS 通告

CDP連接建立過程中會通告初始MSS(Maximum Segment Size),這個值可以由用戶程序進行設置。但這個初始值是靜態(tài)的,當通信雙方跨越多個網(wǎng)絡時,使用設置的MSS可能導致傳輸?shù)腎P 報文分片的產(chǎn)生。為了避免分片,CDP在數(shù)據(jù)傳輸過程中進行動態(tài)的路徑MTU(Maximum Transmission Unit)發(fā)現(xiàn),并進行MSS 的更新及通告。

CDP創(chuàng)建UDP SOCKET時,即將IP選項設置為不允許分片: Setsockopt(clientSock, IPPROTO_IP, IP_DONTFRAGMENT, (char*)&dwFlags, sizeof(dwFlag) )。

在發(fā)送數(shù)據(jù)時先以當前MSS 大小進行發(fā)送,如果返回值為錯誤碼WSAEMSGSIZE(10040),則表示為報文尺寸大于MTU,需要進行IP 分片傳輸。此時,縮減MSS大小再次發(fā)送,直至不再返回錯誤碼WSAEMSGSIZE(10040)。當MSS 變更并能成功發(fā)送報文后,需要向?qū)Χ送▓笮碌腗SS 值。每次MSS 縮小后,默認隔30 秒,CDP 將默認擴大MSS 大小,以檢查是否路徑MTU 是否增大了,之后隔30*2 秒、30*2*2 秒進行檢測,如果三次都未發(fā)現(xiàn)MTU 增大則停止進行檢測。網(wǎng)絡中MTU 值的個數(shù)是有限的[3]。因此MSS 的擴大及縮減,可依據(jù)一些由近似值按序構(gòu)成的表,依照此表索引進行MSS 值的擴大與縮減計算。

CDP 中MSS 與MTU 之間關(guān)系的計算公式如下:MSS = MTUC20(IP首部)C8(UDP首部)C12(CDP首部)。

4 CDP應用程序開發(fā)接口(CDP Socket API)

使用CDP進行網(wǎng)絡程序開發(fā)是非常容易的,它API與標準socket API是非常相似的,對應功能的函數(shù)名稱都相同,只是CDP的所有API都處于名稱空間CDP 之下。此程序庫的實現(xiàn)也參考了BSD Socket的實現(xiàn)。CDP Socket API列表如下:

5 結(jié)束語

本文提出了一種基于UDP協(xié)議之上的TCP協(xié)議實現(xiàn)――CDP協(xié)議,并對現(xiàn)實的一些關(guān)鍵部分進行了討論,最后給出了CDP協(xié)議的應用開發(fā)接口。CDP協(xié)議同時具備了TCP通用、高效的特點,有利用的UDP的NAT穿透特性,可廣泛應用與構(gòu)建各種P2P網(wǎng)絡應用。

參考文獻:

[1]B. Ford, P. Srisuresh, D. Kegel, Peer-to-Peer Communication across Network Address Translators [EB/OL], draft-ford-midcom-p2p,/pub/net/p2pnat, June 2004.

[2]W.Richard Stevens, 范建華,譯,TCP/IP詳解――卷Ⅰ:協(xié)議[M],機械工業(yè)出版社,2000.4.1.

tcp協(xié)議范文第2篇

關(guān)鍵詞:NDK; TMS320DM642; TCP/ IP

1、 NDK 的結(jié)構(gòu)

TI公司依據(jù)C6000芯片推出了TCP/IP NDK(Network Developer's Kit)開發(fā)套件, 其主要構(gòu)成包括: (1)支持TCP/IP 協(xié)議棧程序庫。其中主要含有的庫: 支持TCP/IP網(wǎng)絡工具的庫,支持TCP/IP 協(xié)議棧與DSP/BIOS平臺的庫,網(wǎng)絡控制以及線程調(diào)度的庫。(2)示范程序。其中主要包括DHCP/Telnet 客戶端, HTTP 數(shù)據(jù)服務器示范。(3)支持文檔。包含用戶手冊、程序員手冊和平臺適應手冊。NDK 采用緊湊的設計方法, 實現(xiàn)了用少量的資源耗費來支持TCP/IP。從實用效果來看, NDK僅用200-250K程序空間和95K 數(shù)據(jù)空間即可完成常規(guī)的TCP/IP 服務。

NDK相對于操作系統(tǒng)和底層硬件是透明的, 因為這是由OS。LIB 提供操作系統(tǒng)DSP/BIOS的接口和HAL。LIB 提供對硬件的支持來實現(xiàn)的。在NDK的TCP/IP協(xié)議棧中STACK。LIB 包括了頂層套接字到底層鏈路層的所有功能, NETCTRL。LIB在整個協(xié)議棧中起關(guān)鍵作用, 協(xié)調(diào)操作系統(tǒng)和底層硬件驅(qū)動, 管理所有網(wǎng)絡事件, NETTOOL。LIB 提供配置網(wǎng)絡各種服務。

2、NDK 在DSP/BIOS 下的使用

DSP/BIOS 是TI 開發(fā)的實時微型操作系統(tǒng), 支持線程管理、實時分析、周期函數(shù)、調(diào)度軟件中斷以及外部硬件中斷與各種外設的管理。使用DSP/BIOS 所有與硬件有關(guān)的操作都必須借助操作系統(tǒng)本身提供的函數(shù)完成, 應避免直接控制硬件資源?;贒SP/BIOS 的程序與傳統(tǒng)開發(fā)過程是不同的, 用戶編寫的程序由DSP/BIOS 調(diào)度, 不再按標寫的次序順序執(zhí)行。同樣開發(fā)基于DSP/BIOS的網(wǎng)絡應用程序也必須要遵循一些原則。

在DSP/BIOS 下使用NDK 必須注意以下幾點: (1) 為了保證使用NDK 的工程項目能正確編譯, 在CCS 的Link Order 要按一定的順序添加庫文件, 推薦的順序是: NETCTRL。LIB、HAL_xxxLIB、STACK。LIB、OS。LIB; (2)在使用NDK 的過程當中, OS和HAL 會創(chuàng)建三個內(nèi)存段, 分別是PACKETMEM、MMBUFFER、OBJMEM, 必須在CMD 文件中為這三個段在內(nèi)存中分配存儲空間;(3) 至少要使用32K 的cache, 否則應用程序會產(chǎn)生不可預料的錯誤;(4) 必須在CDB文件中為HAL 創(chuàng)建一個周期為100ms 的PRD 函數(shù), 用來驅(qū)動llTimerTick()系統(tǒng)函數(shù);(5) OS 需要鉤子函數(shù)為TCP/IP 堆棧加載和保存私人變量指針, 所以必須在CDB 文件中創(chuàng)建兩個鉤子函數(shù)NDK_hookInit()和NDK_hookCreate();(6)必須把工程項目的IncludeSearching Path 指向NDK 安裝目錄下的inc 文件夾。

3、NDK 性能測試

測試NDK性能既有主觀性又有客觀性。主觀性適應為實際測試要受到很多環(huán)境因素的影響??陀^性是因為使用標準的工具,并且結(jié)果可重現(xiàn)。 所以只能是性能的估計性測試。影響NDK性能的主要因素有:

socket API: NDK既支持非拷貝的數(shù)據(jù)包socket,也支持基于緩沖區(qū)的典型socket,甚至非拷貝的直接接收的TCP數(shù)據(jù)流。性能隨所采用的策略變化而變化。

socket 緩沖區(qū): socket緩沖區(qū)影響TCP發(fā)送和接收的窗口大小,并且決定每次發(fā)送數(shù)據(jù)流大小,這對網(wǎng)絡性能有很大的影響。

CPU速度:在cache大小一定的情況下,網(wǎng)絡性能與CPU速度成正比。CPU cache: cache的大小對網(wǎng)絡性能有巨大的影響。

網(wǎng)絡硬件設備:以太網(wǎng)硬件設計的好壞直接影響DSP和網(wǎng)絡接口的速度。

外部存儲器(EMIF)接口:對于和DSP外部存儲器接口相連的以太網(wǎng)設備, EMIF的速度對外部解碼邏輯有額外的影響。

下面的測試由TI提供,測試不僅兼顧最佳的性能而且考慮到應用的實際情況,比如socket緩沖區(qū)大小為8K,而不是32K 或64K,因為這在嵌入式設備中是不切實際的。測試的過程是DSP執(zhí)行低優(yōu)先級的網(wǎng)絡任務,PC機執(zhí)行客戶基準測試程序, 然后與DSP不執(zhí)行網(wǎng)絡任務時CPU的負載情況做對比。

4 、結(jié)論

TI推出的NDK網(wǎng)絡開發(fā)工具不僅可以使技術(shù)人員快速開發(fā)基于DSP的網(wǎng)絡應用程序,而且具有十分可靠的性能,這使得C6000系列芯片完全可以勝任大數(shù)據(jù)量的視頻網(wǎng)絡傳輸?shù)囊?,是開發(fā)嵌入式網(wǎng)絡視頻設備的首選。

參考文獻

[1]Texas Instrument。TMS320C6000 Programmer ' s Guide(Rev。 I)。

tcp協(xié)議范文第3篇

關(guān)鍵詞:網(wǎng)絡安全; TCP/IP協(xié)議;安全性

引言

現(xiàn)在Internet已在全世界普及,它使人們穩(wěn)坐家中就可以得到世界各國的所有信息,并已經(jīng)逐漸成為通信方面的基礎(chǔ)設施。但是從另一方面來說,由于世界的計算機通過網(wǎng)絡互相連通潛在了很多不安全的因素。于是,要安全地使用Internet,就需要具備防止信息泄漏以及防止被篡改等網(wǎng)絡安全問題的能力。為了預防這些網(wǎng)絡上的不正當行為,特別需要理解Internet在安全方面的特性,以便采取適當?shù)姆婪秾Σ摺?/p>

1. TCP/IP的協(xié)議結(jié)構(gòu)

TCP/IP作為通信協(xié)議,它是一組協(xié)議的集合,其中有我們常見的TCP和IP協(xié)議,也有用于管理通信方法的協(xié)議,也有測試網(wǎng)絡狀態(tài)等工具性的協(xié)議。

支持因特網(wǎng)通信的TCP/IP是以TCP協(xié)議和IP協(xié)議為中心構(gòu)成的協(xié)議群的總稱。TCP/IP通信協(xié)議從最底層開始,是由網(wǎng)間層、傳輸層以及應用層構(gòu)成的。像這樣的構(gòu)成層次,可以使開發(fā)工作形成模塊式開發(fā)。

2. 按TCP/IP的協(xié)議層,對其安全性探討

2.1網(wǎng)間層在安全方面的隱患主要包括以下幾種:

(1)偽造IP地址

在Internet中,各個設備是按照預先分配的IP地址或者通過DHCP的方式來分配IP地址來標識。于是,如果其中的某個設備設置成其他設備所屬的IP或者冒充網(wǎng)關(guān)向設備發(fā)送數(shù)據(jù)包,就會造成通信混亂,從而導致網(wǎng)絡癱瘓。舉個簡單的例子,以太網(wǎng)上搶奪其他計算機的IP,就可以謊稱是被搶奪計算機IP數(shù)據(jù)包的源地址。致使在這種情況下,被冒充的計算機上會出現(xiàn)顯示IP地址沖突的提示框。而且在這種狀態(tài)下,也不能保證計算機能夠正常運行。對于這樣的偽造IP地址(IP Spoofing:IP欺詐)的攻擊行為,需要采取以下的措施:

> 利用網(wǎng)絡監(jiān)視工具,對冒充源地址的數(shù)據(jù)包通過外部網(wǎng)絡進行檢查,確認是否真正來自于送信源地址。

> 在服務器上生成對于遠程接入進程的記錄機制,用來見識服務器的適用情況。

(2)偽造ARP

在網(wǎng)間層上,雖然在設置發(fā)送端與接收端時,利用了IP地址通信,但在作為物理層之一的以太網(wǎng)上卻利用了MAC地址來標識發(fā)送端與接收端的地址。像這種網(wǎng)間層的IP地址體系與數(shù)據(jù)鏈路層的MAC地址體系相互對應的分配取決于地址解析協(xié)議(ARP)。計算機在通信時首先利用ARP獲得與目的IP地址所對應的MAC地址。從減少通信流量的觀點出發(fā),一旦給予對應MAC地址的IP地址,這種對應組合將在ARP表中保持一定時間的緩存,這樣通過發(fā)送偽造的ARP數(shù)據(jù)包就可以改寫這個緩存。

作為防范上述攻擊行為的對策,可以采取兩種方法:

> 利用保證IP數(shù)據(jù)包合法性的IPSec中的AH的認證功能

> 采用使應用軟件具備對通信過程進行加密的方式以及強化認證機構(gòu)。

2.2傳輸層上存在的安全隱患主要包括以下幾種:

(1)假冒TCP初始序號

在通信過程中,采用被稱為三次握手的步驟建立起來的TCP連接。在這個過程,對于使用IP地址認證的應用程序,如果可以順推出初始序號,那么只要模擬發(fā)送端的IP地址,就可以建立TCP連接。不過現(xiàn)在的操作系統(tǒng)中,初始序號的分配方法已變得相當復雜,事實上序號已不能隨便推測。

(2)利用TCP/UDP數(shù)據(jù)包的DoS攻擊

DoS攻擊是通過生成大量的、已處于連接狀態(tài)的TCP連接,使TCP/IP模塊陷入崩潰狀態(tài)的操作。對于以操作系統(tǒng)為目標的攻擊,可以通過導入具備屏蔽TCP SYN數(shù)據(jù)包功能的防火墻來防范。

2.3應用層上存在的安全隱患主要包括以下幾個方面:

(1)掃描/搜索

對信息系統(tǒng)的非法入侵,是通過收集作為攻擊目標的設備以及用戶的相關(guān)信息開始的。首先通過掃描搜索設備,同時通過BBS、網(wǎng)絡新聞以及主鏈接清單等資源數(shù)據(jù)收集用戶的信息。掃描用戶的設備后,通過截取用戶的通信數(shù)據(jù)或數(shù)據(jù)包、收集認證信息以及嘗試用戶密碼等方法,使自己能夠獲得對計算機信息和資源的讀寫權(quán)以及控制權(quán),從而再訪問該計算機。

(2)DNS欺騙

DNS欺騙是一種從外部改寫由DNS服務器管理的主機名與IP地址對應表的攻擊方式。如前所述,在Internet世界中,計算機以及路由器是通過被分配的、特有的IP地址來識別的。但是IP地址作為一串數(shù)值,人們不便于記憶,因而出現(xiàn)了主機名這一概念。DNS是提供IP地址與主機名對應的機制,因此,一旦這種對應關(guān)系出現(xiàn)問題,那么IP數(shù)據(jù)包就不能夠被發(fā)送到主機名所對應的IP地址。DNS欺騙的一個簡單事例,就是在IP地址與主機名對應表的hosts文件中,進行對應關(guān)系不一致的設定。所以對于用戶來說,接收網(wǎng)絡安全方面的教育是非常重要的。

(3)竊聽用戶認證信息

這種行為大多是在非法侵入計算機后,安裝木馬程序,以非法手段獲取該計算機所連接的網(wǎng)絡的通信信息。特別是將以非加密報文形式傳輸數(shù)據(jù)的TELNET、FTP、POP以及HTTP等作為監(jiān)聽對象,來獲取密碼等用戶認證信息。

防竊聽的對策有以下兩種:

> 在通信過程中進行加密,使得數(shù)據(jù)包不能被任意讀取

> 通過限制注入網(wǎng)絡交換機的設備,縮小竊聽范圍。

(4)利用電子郵件進行的DoS攻擊

利用電子郵件進行的拒絕服務攻擊包括:反復頻繁發(fā)送大數(shù)據(jù)量的電子郵件,耗盡磁盤空間的電子郵件炸彈,以及通過其他的郵件服務器,連續(xù)發(fā)送郵件造成第三方延遲等等。

互聯(lián)網(wǎng)工作工程小組最近了一種新的郵件認證技術(shù)說明,該說明加入了域名密鑰識別郵件技術(shù)(DKIM),希望借此來加速對抗垃圾郵件。它把IP地址和郵件的發(fā)送人放在一起進行分析,然后通過公共密鑰加密,給郵件加上一個數(shù)字簽名,這個數(shù)字簽名包含著發(fā)件人的域名。

(5)病毒

計算機病毒是附著于程序中可以自我繁殖的程序?,F(xiàn)在所發(fā)現(xiàn)的病毒一般具有以下的形態(tài):

* 以篡改或破壞計算機中所存儲的數(shù)據(jù)為攻擊目標

* 利用用戶作為中介(U盤、電子郵件等)來進行傳播。

2011年影響最大的十大病毒之中,鬼影病毒、QQ群蠕蟲病毒QQ假面病毒、DNF假面病毒、新型QQ大盜等新老變種病毒榜上有名。對于病毒的防護,我們要加強計算機安全意識,提高警惕,不隨便訪問不可靠網(wǎng)站,定時對計算機進行查殺病毒。

3.結(jié)束語

    通過對TCP/IP協(xié)議層的安全問題進行闡述及分析,不難發(fā)現(xiàn)其在設計上存在很多安全隱患,黑客或黑客工具往往利用這些隱患對網(wǎng)絡進行攻擊,只有充分了解這些隱患并采取相應的防范措施,才能增強網(wǎng)絡的安全性。

參考文獻:

[1]石志國等編著.計算機網(wǎng)絡安全教程[M]. 北京交通大學出版社;北京:,2004

[2]李美萍. TCP/IP協(xié)議體系的安全性探討[J]. 山西通信科技, 2007(4): 11-13.

tcp協(xié)議范文第4篇

關(guān)鍵詞:FPGA;以太網(wǎng);TCP/IP協(xié)議;DM9000

中圖分類號:TP301 文獻標識碼:A 文章編號:1672-7800(2013)005-0022-02

0、引言

隨著網(wǎng)絡通信技術(shù)的飛速發(fā)展,越來越多的測試儀器需要將大量數(shù)據(jù)傳送給終端計算機進行解析處理,抑或從PC機傳送大量數(shù)據(jù)給相應設備?,F(xiàn)在常用的數(shù)據(jù)傳輸方式(usb、總線)中,雖說數(shù)據(jù)傳輸?shù)乃俾瘦^快(可達400Mb/s),但是傳輸距離過短成為其不可避免的缺點。而百兆以太網(wǎng)中點對點間的數(shù)據(jù)傳送距離可達100m,如果借助交換機或者路由器等設備可以實現(xiàn)更遠距離傳輸。本文以FPGA為基礎(chǔ),在硬件上完成簡化的TCP/IP協(xié)議棧,用來獲取必須的協(xié)議處理機能,實現(xiàn)三態(tài)以太網(wǎng)嵌入式系統(tǒng)設計。

1、系統(tǒng)硬件設計

該系統(tǒng)以Altera公司的EPIC12型FPGA芯片作為中心控制單元,另外還需兩片作為緩存數(shù)據(jù)用的SRAM,以太網(wǎng)接口芯片采用DM9000。系統(tǒng)具體硬件框圖如圖1所示。

DM9000是一款全集成、功能強大、性價比高的快速以太網(wǎng)MAC控制器。該芯片擁有一個通用處理器接口、10/1()()PHY、EEPROM和16kB的SRAM。DM9000支持8位、16位以及32位的接口訪問內(nèi)部存儲器,可以支持不同型號的處理器。該芯片的PHY協(xié)議層接口完全可以使用10MBps下的3/4/5類非屏蔽雙絞線和100MBps下的5類非屏蔽雙絞線,很好地對應IEEE 802.3u規(guī)范。DM9000實現(xiàn)以太網(wǎng)媒體介質(zhì)訪問層(MAC)和物理層(PHY)的功能,其中包含MAC數(shù)據(jù)幀的組裝/拆分與發(fā)送接收、地址的識別、CRC編碼/校驗、MLT-3編碼器、接收噪聲抑制、輸出脈沖形成、超時重傳、鏈路完整性測試、信號極性檢測與糾正等。

2、TCP/IP協(xié)議實現(xiàn)

2.1 TCP/IP協(xié)議

TCP/IP協(xié)議就是傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議,它是一個真正實際的開放性通信協(xié)議規(guī)范,其開放式的特點使得計算機之間都可以通過此協(xié)議來完成數(shù)據(jù)的交換,而不管這些設備擁有不同的物理特性或者各自運行著不同的系統(tǒng)。

與其它網(wǎng)絡協(xié)議相同,TCP/IP協(xié)議的開發(fā)也是分不同層次進行的。與ISO開發(fā)的OSI模型相比,TCP/IP的四層模型顯得更為靈活,原因在于它著重強調(diào)功能分布而不是功能層次的劃分。

ARP協(xié)議負責IP地址與MAC地址之間的轉(zhuǎn)換工作,IP協(xié)議實現(xiàn)網(wǎng)絡層數(shù)據(jù)的封裝工作以及路由功能,而TCP和UDP是運輸層的協(xié)議,主要完成傳輸數(shù)據(jù)的封裝、實現(xiàn)可靠穩(wěn)定傳送以及流量的監(jiān)控。ICMP是報文控制協(xié)議,它是一種輔協(xié)議,所具有的Ping功能可以用來診斷網(wǎng)絡性能。在一個正常通信過程中,ARP/IP協(xié)議是必需的,而TCP/UDP實現(xiàn)一種即可。在FPGA用硬件完成ARP\P和UDP比較簡單,而TCP協(xié)議在連接時的握手機制、數(shù)據(jù)發(fā)送接收的校驗機制以及流量的控制,實現(xiàn)起來較為復雜,因此從系統(tǒng)的復雜度來考慮,本文并沒有實現(xiàn)TCP/IP協(xié)議,實現(xiàn)了相對較為簡單的UDP協(xié)議。

2.2 系統(tǒng)模塊構(gòu)成

本系統(tǒng)的協(xié)議棧功能由網(wǎng)絡控制模塊、數(shù)據(jù)接收解析模塊、ARP應答發(fā)送模塊、Ping應答發(fā)送模塊、UDP發(fā)送模塊和調(diào)度模塊構(gòu)成。每個模塊間相互的接口聯(lián)系如圖3所示。

因為每個模塊都有分時訪問DM9000接口總線的要求,所以必須要有一個調(diào)度模塊執(zhí)行中心控制工作,利用開始與結(jié)束信號來同步。在接受到中斷信號時,調(diào)度模塊只有在總線空閑狀態(tài)時才會開啟接收模塊,接收模塊解析完MAC層數(shù)據(jù)包后會發(fā)送對應的請求訊號:ARP應答請求、Ping應答請求,此時必需的應答參數(shù)也會輸出。在總線空閑時,調(diào)度模塊會依據(jù)請求信號開啟對應的應答模塊進行工作。接收模塊在收到已定義端口UDP數(shù)據(jù)包后將有效數(shù)據(jù)寫入SRAM中,供其它的應用模塊使用。

2.3 DM9000接口控制

DM9000內(nèi)部存儲器由物理層寄存器、鏈路層寄存器和數(shù)據(jù)緩沖三部分組成,與該芯片進行的所有數(shù)據(jù)交換作都必須通過此三部分寄存器來完成。為遵循DM9000接口時序規(guī)范,接口邏輯需分層設計,I/O讀寫模塊位于最底層,第二層為物理寄存器讀寫,接下來是鏈路層寄存器讀寫模塊,而最上層是初始化模塊,主要完成接口芯片內(nèi)物理寄存器與鏈路寄存器的初始化工作,比如MAC地址、中斷設置以及數(shù)據(jù)包過濾條件等等。

3、實驗結(jié)果及系統(tǒng)性能分析

3.1 接收處理能力

在計算機端編寫一死循環(huán)程序,用來發(fā)送有效數(shù)據(jù)大小為1 400Byte的UDP數(shù)據(jù)包。當PC端的發(fā)送軟件運行后,網(wǎng)絡傳輸速率可以達到98Mb/s,利用Ethereal能夠看出,相鄰的UDP數(shù)據(jù)包的間隔為10tLs~200tLs。圖4為抓取的FPGA引腳信號波形,通道1為DM9000接收的中斷信號,通道2為FPGA接收處理開始及結(jié)束信號。

3.2 發(fā)送處理能力

如果系統(tǒng)以最大速率發(fā)送含有1400比特的UDP數(shù)據(jù)包,傳送速率可以達到98Mb/s。因為UDP未設計流量監(jiān)控與確認功能,所以在編寫應用軟件的時候需要特別注意,必須加大Socket的緩沖區(qū)大小以及增加數(shù)據(jù)處理的速率,不然會出現(xiàn)數(shù)據(jù)丟失的現(xiàn)象。

tcp協(xié)議范文第5篇

關(guān)鍵詞:TCP/IP;網(wǎng)絡協(xié)議;防御;安全協(xié)議

中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2013)03-0485-02

在短期內(nèi),基礎(chǔ)TCP/IP網(wǎng)絡協(xié)議不可能進行重新設計和部署實施,無法從根本上改變目前網(wǎng)絡面臨嚴重安全威脅的狀況。通過部署一些監(jiān)測、預防與安全加固的防范措施,是增強網(wǎng)絡對已知攻擊的抵御能力不可或缺的環(huán)節(jié)。

1 網(wǎng)絡各層防范措施

在網(wǎng)絡接口層,主要監(jiān)測和防御的安全威脅的方法是網(wǎng)絡嗅探,可以利用防范網(wǎng)絡嗅探的思路,檢測出局域網(wǎng)中的監(jiān)聽點,并在網(wǎng)絡設計上盡量細分和優(yōu)化網(wǎng)絡結(jié)構(gòu),盡量消除數(shù)據(jù)廣播的情況,并對關(guān)鍵路徑上的網(wǎng)關(guān)、路由器等設備進行嚴格的安全防護,以減少網(wǎng)絡嗅探造成的影響。此外,對于無線網(wǎng)絡而言,應增強鏈路層加密的強度,同時對各類網(wǎng)絡采用加密通信協(xié)議,使得在通信過程中,即使遭受嗅探也不會破壞數(shù)據(jù)要達到的機密性要求。

在互聯(lián)層上,雖然IP、ICMP、ARP等協(xié)議中存在安全缺陷,安全問題帶來的風險很難完全避免,但我們可以采用多種檢測和過濾技術(shù)來發(fā)現(xiàn)和阻斷網(wǎng)絡中可能出現(xiàn)的欺騙攻擊,此外也可以增強防火墻、路由器和網(wǎng)關(guān)設備的安全策略,對一些用于欺騙攻擊的特殊數(shù)據(jù)包進行過濾,特別是對外部網(wǎng)絡進行欺騙攻擊的數(shù)據(jù)包進行出站過濾,只有如此,才能共同維護整個互聯(lián)網(wǎng)的安全。對關(guān)鍵服務器使用靜態(tài)綁定IP-MAC映射表、使用IP sec協(xié)議加密通信等預防機制,可以有效地增強網(wǎng)絡對欺騙攻擊的抵御能力。

在傳輸層,可以實現(xiàn)基于面向連接和無連接服務的加密傳輸和安全控制機制,包括身份認證,訪問控制等。

應用層可以采用加密、用戶級身份認證、數(shù)字簽名技術(shù)、授權(quán)和訪問控制技術(shù),以及主機安全技術(shù),如審計、入侵檢測等。

2 網(wǎng)絡各層安全協(xié)議

為了克服TCP/IP協(xié)議棧的安全缺陷和問題,互聯(lián)網(wǎng)研究機構(gòu)也在不斷地研究和開發(fā)一些網(wǎng)絡安全協(xié)議,IETF、IEEE 802等國際性的網(wǎng)絡研究和標準化組織在不斷地進行討論和改進,并作為標準化協(xié)議規(guī)范對業(yè)界進行,使得業(yè)界能夠在這些標準在網(wǎng)絡設備、操作系統(tǒng)中實現(xiàn)和應用這些安全協(xié)議,從而增強現(xiàn)有網(wǎng)絡的安全性。在TCP/IP協(xié)議棧各個層次上運用的網(wǎng)絡安全協(xié)議如下表1所示。

2.1 網(wǎng)絡接口層的安全協(xié)議

網(wǎng)絡接口層的安全協(xié)議設計和標準化主要由IEEE802委員會負責推進,由于無線網(wǎng)絡傳輸媒介的共享特性,因此比有線網(wǎng)絡更加需要安全保護機制,目前常用的802.11WiFi、藍牙(Bluetooth)等無線網(wǎng)絡均實現(xiàn)了用于身份認證、加密傳輸和防止假冒篡改攻擊的安全協(xié)議,如WEP(Wired Equivalent Privacy)和WPA/WPA2(Wi-Fi Protected Access)協(xié)議等。此外IEEE802委員會還制定了802.1X協(xié)議,提供了基于端口訪問控制的接入管理協(xié)議標準,為各種不同類型網(wǎng)絡中的用戶認證和訪問控制給出了通用的解決方案。

2.2 網(wǎng)絡互聯(lián)層的安全協(xié)議

網(wǎng)絡互聯(lián)層目前最重要的安全通信協(xié)議主要是IP sec協(xié)議簇。IP sec (Internet Protocol Security),即互聯(lián)網(wǎng)安全協(xié)議,是IETF(Internet Engineering Task Force)提供的一系列的互聯(lián)網(wǎng)安全通信的標準規(guī)范,這些是私有信息通過公用網(wǎng)的安全保障。 IP sec適用于目前的IP版本IPv4和下一代IPv6。IP sec規(guī)范相當復雜,規(guī)范中包含大量的標準文檔。由于IP sec在TCP/IP協(xié)議的核心層――IP層實現(xiàn),因此可以有效地保護各種上層協(xié)議,并為各種安全服務提供一個統(tǒng)一的平臺,IP sec也是被下一代互聯(lián)網(wǎng)所采用的網(wǎng)絡安全協(xié)議。 IP sec協(xié)議是現(xiàn)在VPN開發(fā)中使用最廣泛的一種協(xié)議,有可能在將來成為IPVPN的標準。

IP sec協(xié)議簇的基本目的是把密碼學的安全機制引入IP協(xié)議,通過使用現(xiàn)代密碼學方法支持機密性和認證服務,使用戶能有選擇地使用,并得到所期望的安全服務。IP sec將幾種安全技術(shù)結(jié)合形成一個完整的安全體系,包括安全協(xié)議部分和密鑰協(xié)商部分。IP sec的安全協(xié)議主要包括AH協(xié)議(Authentication Header,認證頭)和ESP協(xié)議(Encapsulate Security Payload,封裝安全載荷)兩大部分:AH認證協(xié)議提供五連接的完整性、數(shù)據(jù)源認證和抗重放保護服務,但是AH不提供任何機密性保護服務;而ESP協(xié)議則為IP協(xié)議提供機密性、數(shù)據(jù)源驗證、抗重放,以及數(shù)據(jù)完整性等安全服務。其中,數(shù)據(jù)機密性是ESP的基本功能,而帶有數(shù)據(jù)源身份認證、數(shù)據(jù)完整性檢驗以及抗重放保護等功能。此外IP sec中還包含了密鑰協(xié)商和交換協(xié)議,如Internet密鑰交換協(xié)議(Internet Key Exchange,IKE),負責處理通信雙方的協(xié)議及算法的協(xié)商,產(chǎn)生并交換加密和認證密鑰,以建立起AH和ESP協(xié)議需要的通信雙方安全關(guān)聯(lián)(Security Association,SA)。

IP sec協(xié)議支持隧道及傳輸兩種模式。隧道模式用于主機與路由器或兩部路由器之間,保護整個IP數(shù)據(jù)包。通常情況下,只要IP sec雙方有一方是安全網(wǎng)關(guān)或路由器,就必須使用隧道模式。傳輸模式用于兩臺主機之間,保護傳輸層協(xié)議頭,實現(xiàn)端到端的安全。它所保護的數(shù)據(jù)包的通信終點也是IPsec終點。傳輸模式下,IP sec主要對上層協(xié)議即IP包的載荷進行封裝保護,通常情況下,傳輸模式只用于兩臺主機之間的安全通信。

由于工作在互聯(lián)層上,IP sec協(xié)議能夠為IP協(xié)議之上的任何網(wǎng)絡應用提供安全保護機制,而網(wǎng)絡應用無需任何的特殊設計和實現(xiàn),就可以使用IP sec.

2.3 傳輸層的安全協(xié)議

傳輸層上的安全協(xié)議主要是TLS(Transport Layer Security),其前身是由Netscape公司所開發(fā)的SSL(Secure Socket Layer),目前最新版本是IETF的TLS l.2標準化網(wǎng)絡安全協(xié)議(RFC 5246)。TLS協(xié)議在傳輸層上通過密碼學算法,為應用層的網(wǎng)絡通信提供了安全的點到點傳輸,在Web瀏覽、電子郵件、即時通信和VoIP (Voice over IP)等網(wǎng)絡應用服務中得到了廣泛使用。

TLS協(xié)議基于密碼學算法支持在互聯(lián)網(wǎng)上的身份認證和通信機密性保護,能夠防止竊聽、干擾和消息偽造。TLS協(xié)議包括兩個協(xié)議組:TLS記錄協(xié)議和TLS握手協(xié)議。 TLS記錄協(xié)議位于可靠的傳輸協(xié)議TCP之上,用于封裝各種高層協(xié)議,提供的安全性具有兩個基本特性。

① 加密:使用對稱加密算法(如 DES、RC4等)進行數(shù)據(jù)加密,以保證傳輸數(shù)據(jù)的機密性,對稱加密所產(chǎn)生的密鑰對每個連接都是唯一的,對稱密鑰由TLS握手協(xié)議進行協(xié)商,記錄協(xié)議也可以不使用加密。

② 可靠:信息傳輸使用密鑰進行消息完整性檢查,通常使用安全哈希函數(shù)(如SHA、MD5等)來計算消息完整性校驗和(Message Authentication Code,MAC)。

TLS握手協(xié)議允許服務器與客戶機在應用程序協(xié)議傳輸和接收其第一個數(shù)據(jù)字節(jié)前,進行單向身份認證,或者彼此之間相互認證,并協(xié)商加密算法和加密密鑰。

TLS協(xié)議已被用于封裝整個網(wǎng)絡棧以創(chuàng)建虛擬專有網(wǎng)絡(Virtual Private Network,VPN),如開源的Open VPN軟件,一些廠商也將TLS的加密和認證機制與訪問授權(quán)相結(jié)合,研制出功能更強的SSLVPN產(chǎn)品,與傳統(tǒng)的IP sec VPN技術(shù)相比,TLS在防火墻和網(wǎng)絡地址轉(zhuǎn)換(Network Address Translation,NAT)設備穿越方面具有內(nèi)在的優(yōu)勢,使其在存在大量遠程訪問用戶的環(huán)境中具有更好的易管理性。

2.4 應用層的安全協(xié)議

在應用層,安全通信協(xié)議的特點是需要針對不同的應用安全需求,設計不同的安全機制,例如HTTP安全、電子郵件、遠程控制、電子交易等,在安全協(xié)議設計過程中也會盡量地使用底層協(xié)議已經(jīng)提供的安全防護能力。

對于萬維網(wǎng)訪問進行安全防護的主要協(xié)議是安全超文本傳輸協(xié)議(Secure Hypertext Transfer Protocol,HTTPS),基于傳輸層安全協(xié)議TLS實現(xiàn),端口號為443,通常應用于電子商務、資產(chǎn)管理等應用,隨著近年來的發(fā)展,HTTPS在Web上逐步流行,在涉及個人敏感信息的登錄及使用環(huán)節(jié),安全的網(wǎng)站一般都會使用HTTPS協(xié)議進行加密傳輸和身份認證。

安全電子郵件協(xié)議(Secure/Multipurpose Internet Mail Extensions,S/MIME),由RSA公司提出,是電子郵件的安全傳輸標準。S/MIME使用PKI數(shù)字簽名技術(shù),支持消息和附件的加密傳輸,采用單向散列算法,如SHA―1、MD5等,也采用公鑰機制的加密體系,證書格式采用X.509標準。目前大多數(shù)電子郵件產(chǎn)品都包含了對S/MIME的內(nèi)部支持,網(wǎng)絡管理員應啟用該安全協(xié)議,從而避免了電子郵件明文傳輸所面臨的信息泄露等安全風險。

3 結(jié)束語

TCP/IP協(xié)議是互聯(lián)網(wǎng)得以蓬勃發(fā)展的基礎(chǔ),然而TCP/IP協(xié)議在開始設計時并沒有考慮到現(xiàn)在網(wǎng)絡上如此多的安全威脅,因此不可避免地遭遇了各種形形的攻擊方式。本文介紹了網(wǎng)絡各層上的防范措施和安全協(xié)議,包括它們的技術(shù)原理和具體過程。應對網(wǎng)絡協(xié)議的攻擊威脅,TCP/IP協(xié)議也正在進行著完善和改進,對于防御者而言,應采用最新的安全協(xié)議來武裝自己的網(wǎng)絡,從而降低網(wǎng)絡安全風險。

參考文獻:

相關(guān)期刊更多

中華核醫(yī)學與分子影像

北大期刊 審核時間1-3個月

中國科學技術(shù)協(xié)會

航天標準化

部級期刊 審核時間1個月內(nèi)

中國航天科技集團有限公司

稀有金屬

北大期刊 審核時間1-3個月

北京有色金屬研究總院