複製鏈接
請複製以下鏈接發送給好友

服務數據單元

鎖定
服務數據單元是指定層的用户服務的數據集,傳送到接收方的時候同一協議層時數據沒有發生變化。
中文名
服務數據單元
外文名
Service Data Unit
又    稱
業務數據單元
作    用
高層協議的信息單元傳到低層協議
定    義
指定層的用户服務的數據集
學    科
通信技術

服務數據單元相關介紹

數據的傳輸方式
圖1 圖1
數據在網絡中各節點內是沿層次傳送的。如圖1所示,數據從發送進程出發,在應用層中加上報頭AH後,送到表示層。表示層不能區分AH及其後的數據部分,把這兩部分看作一個整體,作為應用層來的數據,簡單地加上表示層的報頭PH後送到對話層。重複同樣的過程,一直傳送到物理層。物理層亦不區分來自數據鏈路層的報文含義,而只簡單地看作一系列比特流,然後將其轉換成電信號通過介質傳送到接收進程所在的節點的物理層。數據鏈路層與其它層不同的是,在數據鏈路層不僅要加上報頭DH,還要加上報尾DT。接收節點上的數據鏈路層收到物理層送來的比特流後根據數據鏈路層協議能識別出報頭DH和報文尾DT(但不能識別出此數據部分中網絡層報頭NH),把DH和DT去掉後將其餘的部分傳送到網絡層。重複此過程,依次通過以後各層次並去掉相應的報頭。最後,應用層把發送進程發來的純數據部分交給接收進程。
服務、服務訪問點和數據單元
ISO OSI/RM的每層為其上面各層提供專門的通信服務。也就是説,每層完成的功能是其上各層工作的基礎。除了最底層(物理層)外,上面各層都依賴下一層完成其特定的功能。在ISO OSI/RM中,設物理層為第1層,應用層為第7層,在N層和N+l層的接口處,由N層向N+l層提供服務。這裏N層是服務的提供者,而N+l層則是該服務的用户。服務是通過一組服務原語來執行的。
層間接口處提供服務的地方稱為服務訪問點SAP(Service Access Point),每個服務訪問點都有一個唯一的標識地址。例如,一個傳輸層的服務訪問點TSAP地址可表示成:
<網絡號><主機號><端口號>。
相鄰層在提供服務的過程中要傳遞信息,這些信息的單位在OSl模型中稱為服務數據單元(Service Data Unit-SDU)。在N層和N—l層間傳遞的數據單元,記為(N)SDU。SDU在服務訪問點處穿過接口時,通常要加上一些輔助信息(比如説服務原語中的某些參數),這些輔助信息在OSl模型中統稱為接口控制信息。(Interface Control Information--ICl)。SDU和ICI一起構成接口數據單元(Interface Data Unit-IDU)。IDU在離開接口的SAP時去掉ICl。對等層間交換的信息單位稱為協議數據單元(Protocol Data Unit卜PDU)。N層的PDU由N層的SDU加上該層的協議控制信息(Protocol Control Information—PCI)構成。
圖2 圖2 [1]
如圖2所示,(N+I)PDU是通過(N)SDU傳遞到N層,加上(N)PCI後構成(N)PDU的。看上去似乎(N+1)PDU就等同於(N)SDU,雖然在許多情況下確實如此,但卻並不總是這樣。有時可以將多個(N+1)PDU拼成一個(N)SDU,稱為拼接(Concatenation)當然,在發送方若進行了拼接,在接收方的對等層就要進行相反的分割(Separation)。另外,一個(N)SDU若太大,也可以分成若於段,分別加上協議控制信息,構成多個(N)PDU。這在發送方稱為分段(Segmenting),而接收方則要進行相反的合段(reassembling)。

服務數據單元單元封裝

服務數據單元(Service Data Unit,SDU)是L2CAP和上層協議之間交換的數據格式,它是上層協議傳給L2CAP層的數據或者L2CAP要傳給上層的數據。
在基本的L2CAP模式下,每個SDU被封裝在一個最小的L2CAP協議元素中,形成的L2CAP PDU叫做基本信息幀(Basic Information Frame,B—frame)。
分段和重組操作只用在重傳模式和流控制模式下。SDU被分段成一個個小的SDU段,然後每個段用L2CAP協議封裝成L2CAP PDU,這種PDU叫做信息幀(Information Frame,I—frame)。
最大PDU負荷長度(Maximun PDU Payload Size,MPS)定義了一個SDU分段的最大長度。MPS可以通過一個特定的接口通知上層。
L2CAP SDU的分段
在流控制或重傳模式下,SDU被分段,然後單獨用L2CAP協議封裝(加頭和長度元素)形成I-幀。I-幀可以出現在流控制模式下,也可以出現在重傳模式下。頭包括2比特的SAR字段,它是用來確定這個I.幀是原來SDU的開始或後續或是一個沒經過分段的SDU。
L2CA PSDU的重組
接收方根據接收到的I一幀的SAR字段來進行重組過程。根據L2CAP SDU的長度字段和序列號碼,就可以知道哪些L2CAP SDU丟失。
分段具體過程
注意SDU和L2CAP PDU在點對點方式下傳輸時發送方和接收方的分段和重組的大小是確定的,但在發送方和接收方可以是不一樣的。發送方發送的基帶數據分組在空中傳輸的數據流對於雙方的藍牙設備是通用的。 [2] 
參考資料
  • 1.    胡亮,李強,康健編著,網絡程序設計,吉林大學出版社,2003.09,7-8
  • 2.    金純 林金朝 萬寶紅編著,藍牙協議及其源代碼分析,國防工業出版社,2006年06月第1版,第203頁