流控制傳輸協議SCTP探究論文

時間:2022-10-23 09:45:00

導語:流控制傳輸協議SCTP探究論文一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

流控制傳輸協議SCTP探究論文

關鍵詞:流控制傳輸協議sctp

一、引言

SS7(SignalingSystemNo.7)網絡和Internet網絡是兩個獨立的網絡,SS7用于傳輸電話信令,而Internet是基于分組交換的,用來傳輸數據業務。隨著IP網絡和SS7信令網各自業務的擴展,信令在IP網上的傳輸已經成為了關鍵問題,而信令傳輸具有高可靠性低時延的要求。在IP網絡中,大部分的業務都是通過UDP或TCP來傳送的。UDP是無連接的傳輸協議,它能滿足低延遲的要求,但是它卻無法保證可靠傳輸。TCP能保證數據可靠傳輸,但是它也不能完全符合信令傳輸的要求;TCP套接字不支持多宿性;TCP是面向比特流的,將數據傳輸當作是沒有結構的字節序列。

因此,為了滿足信令傳輸的要求,IETF的SIGTRAN(SignalingTransportGroup)組提出了一種新的傳輸層協議─SCTP(StreamControlTransportProtoco1)。

二、SCTP基本概念

1.多宿性

多宿是指一個SCTP端點可以通過多個IP地址到達,這樣兩個SCTP端點在建立了偶聯后,數據可以通過不同的物理通路進行傳送。

ATM交換機偶聯的兩個端點A和B各自綁定兩塊不同的IP地址的接口卡,通過衛星電路和ATM兩種方式連接。其中一個地址被置為首選,另一個則作為可選,當首選通路出現錯誤時可以通過可選通路繼續進行數據傳輸而不會導致傳輸中斷,直到首選通路恢復。上層應用可以顯式聲明使用可選通路,丟包重傳也可以在可選通路上進行。

2.多流性

SCTP通過數據傳輸和數據遞交相互獨立來實現多流特性。每個DATA數據塊在協議中使用兩套順序號:傳送順序號TSN和流順序號SSN。當一個用戶消息被分段后,必須在該消息的每個分段中帶有相同的SSN,這樣才能從一個流中分辨出不同的消息。當用戶消息被分段到各個DATA塊中,接收方就要使用TSN對消息進行消息重組,即被分段的用戶消息的各段必須使用連續的TSN。SCTP允許數據接收端確定TSN是否出現間隔,以及在間隔后收到的消息是否屬于同一個被影響的流中。如果TSN出現間隔,SSN也出現相應的間隔,則收到的消息就在被影響的流中,否則SSN不會出現相應間隔。接收方可以繼續在未受影響的流中傳送消息,僅緩沖被影響的流直到被重傳,各流相互獨立,解決了在TCP單流中容易出現的隊頭阻塞現象。

3.阻塞控制機制

SCTP阻塞控制同樣是基于速率自適應窗口的機制,通過重傳的方式提供可靠的數據傳輸。SCTP和TCP的阻塞控制機制有幾點不同:

(1)SCTP采用與TCP相似的基于SACK間隔報告的快速重傳機制,但SCTP沒有一個顯式快速恢復階段,借助SACK塊SCTP自動進入快速恢復。

(2)SCTP強制使用SACK,在TCP中SACK的使用是可選的。在遇到單個數據窗口發生連續丟包時,SCTP更為健壯,避免了耗時的慢啟動階段,節省了帶寬,同時提高了吞吐量。

(3)SCTP在慢啟動或阻塞避免時,阻塞窗口大小隨著確認字節增加,而TCP中則是隨著接收到的確認字段增加。SCTP改善了在長傳輸延遲的環境下(如衛星鏈路)的傳輸性能。

(4)SCTP在阻塞避免時,阻塞窗口只有在整個窗口被充分利用才增加其大小。此外,如果SCTP端點保持一個低的發送速率,而沒有充分利用阻塞窗口,這時網絡不會產生丟包指示,阻塞窗口不斷增大,此時發送端突然發送一個超過阻塞窗口的突發數據流,結果會造成網絡更加阻塞。

(5)SCTP規定發送端收到4個重復確認后開始快速重傳,而在TCP中是3個。4.安全機制

傳輸協議可用于傳輸像計費或信令消息這樣的敏感信息,SCTP中提出了服務的可用性和消息的完整性兩個目標。

對服務的可用性而言,常見的威脅是拒絕服務,根源就在于目標主機為每個未決的連接在內存中保留了大量無用的狀態信息,最終耗盡系統資源。SCTP采用“四次握手”的連接建立方式和COOKIE機制消除了SYN攻擊的威脅,解決了為未決的連接保留狀態信息的問題。服務器端只有在收到COOKIEECHO消息后才從關閉狀態進入建立狀態,此前的關閉狀態不為客戶端的請求保留任何狀態信息。Cookie放在INITACK和COOKIEECHO消息中在端點間傳送,服務器能夠從COOKIEECHO中提取出建立正常偶聯要求的所有信息。Cookie機制設立的主要用意是將狀態信息存儲在客戶端或者網絡上,而非服務器內存中,它的使用將服務器資源預留的時間推遲到了Cookie帶回完整的鑒別信息后。這是一種簡單有效的防御DoS攻擊的方法。

如果攻擊的目的是信息的完整性和機密性,那么SCTP載荷將是攻擊的目標。SCTP用IPSec(IPSecurity)或傳輸層安全(TransportLayerSecurity,TLS)來保護載荷。

三、問題與挑戰

作為一種相對新型的協議,SCTP仍然面臨著許多問題要解決,下面簡單介紹一下:

(1)No.7信令傳輸有嚴格的可靠性需求,但至今沒有大規模利用SCTP協議在IP網上傳輸No.7消息的可信的結果報告,仍有許多的仿真和實驗工作要做。

(2)SCTP假定所有的數據丟失都是由阻塞引起的,而且RTT也在逐漸慢速變化。

(3)不中斷數據傳輸即能動態增刪地址對一些關鍵應用或移動環境很有益,但需要增加新的塊定義和參數類型,目前正處于IETF草案階段,而且又引入了額外的風險:流量重定向攻擊。

四、結束語

雖然SCTP最初是作為一種為了在IP網絡上傳輸信令消息而設計的,但它與生俱來的新特性使越來越多的人認為SCTP將會是一種新型通用傳輸協議,甚至可能會替代現有的TCP協議成為下一代網絡主要的傳輸協議。

目前,SCTP已被3GPP采納,許多設備廠商都已經完成了各自的協議和互通測試,但大規模應用的仿真工作仍在進行,SCTP在無線互聯網下的應用及性能評估也在進一步研究中。

參考文獻

1RandallR.Stewart.StreamControlTransmissionProtocol[S].IETFRFC2960,2000.10.

2RandallR.Stewart.流控制傳輸協議SCTP參考指南(影印版).清華大學出版社,2003.1

3于林.SS7overIP的關鍵技術SCTP概述.江西通訊科技,2002.12

4賀羽中.SCTP協議的研究。山西電子技術,2005.5

5葉凌偉.SCTP與TCP的功能對比及應用分析.中國數據通信,2003.1