網路層使用的協議由動態分配的nsapi來標識(dlmu2001:該nsapi應該是在pdp啟用時在**層生成的,然後通過sn**-active.indication傳遞給sndcp層的,其實相當於在此建立了網路層協議和nsapi之間的對應關係)。sndcp在收到n-pdu後,在發向下層之前會插入該nsapi,對等實體收到底層資料後,會根據nsapi來確定所使用的網路協議。
1)建立準則
a.收到sn**-active.ind,該nsapi的qos配置要求使用acknowledged peer-to-peer llc operation,但是對應的
sapi還未建立acknowledged peer-to-peer llc operation
【dlmu2001】qos中的reliability class引數
b.收到sn**-modify.ind(dlmu2001:此時qos profile發生了變化,此時可能從unacknowledged模式改變成acknowledged模式,或者從乙個老的sapi更新到乙個新的sapi上)
2)重建準則
a.v.42資料壓縮演算法檢測到錯誤
b.分片重組時候,處於receive first segment 狀態,收到f位置0的sn-data pdu(此時該pdu將被丟棄,llc
operation進行重建)
c.分片重組時,處於receive subsequent segment狀態,收到f位置1的sn-data pdu,且dcomp,pcomp或
者n-pdu number同第乙個分片不同(此時屬於同乙個n-pdu的之前的分片將被丟棄,對應的sapi的llc
operation將重建)
3)sndcp發起的建立/重建流程
說明:a.ll-estab.req中可以包含xid引數,如果包含該引數
b.可能的結果:成功;失敗;發生衝突後成功解決
c.收到ll-estab.cnf表示建立成功;收到ll-release.ind表示建立失敗,根據失敗的原因,sndcp層需要作出恰
當的動作(比如通知**子層)
d.如果sndcp實體在發出ll-estab.req或者ll-xid.req之後收到ll-estab.ind或者ll-xid.req,此時即發生衝
突,這種情況下, sndcp實體就當做沒有發過ll-estab.req,正常處理接收到的ll-estab.ind或者ll-
xid.req,如果之前發出的ll-estab.req或者ll-xid.req包含乙個或者多個xid引數,或者在xid引數中包含了一
個或者多個壓縮字段,或者在乙個壓縮欄位中包含了乙個或者多個引數,而這些引數沒有在ll-estab.ind或者ll-
xid.ind中協商,則sndcp實體此時再ll-xid.req進行協商。
3)acknowledged peer-to-peer llc operation的釋放
釋放準則:收到sn**-deactive.ind或者sn**-modify.ind且對應的sapi不再有使用acknowledged peer-to-peer的nsapi。
過程:呼叫ll-release.req,收到ll-release.cnf表示釋放成功
1)n-pdu在壓縮成分片並傳輸到llc層之前,必須緩衝
【dlmu2001】這個緩衝使用哪一層的buffer比較好?網路層?
2)收到sn**-deactive.ind會刪除相關的nsapi的對應緩衝
3)對於acknowledged方式的資料傳輸,緩衝必須被確認後才能刪除(ll-data.cnf和sn**.sequence可以完
成該確認)。
4)對於unacknowledged方式的資料傳輸,傳輸完成就刪除
sndcp層負責維護對等實體間每個nsapi的n-pdu的投遞順序.
Nacos學習筆記 三 服務消費方式
spring cloud common提供的服務治理介面,負載均衡客戶端 autowired loadbalancerclient loadbalancerclient 原始方式 拼接路徑 public string test autowired resttemplate resttemplate ...
redis學習筆記三(佇列功能)
常用命令 blpop刪除,並獲得該列表中的第一元素,或阻塞,直到有乙個可用 brpop刪除,並獲得該列表中的最後乙個元素,或阻塞,直到有乙個可用 brpoplpush lindex獲取乙個元素,通過其索引列表 linsert在列表中的另乙個元素之前或之後插入乙個元素 llen獲得佇列 list 的長...
struts2學習筆記 三 處理使用者輸入資訊
1.struts2處理使用者輸入資訊 1.1.領域物件 還記得之前在loginaction類中有如下的屬性嗎?private user user 在這裡暫時還沒有用到。後面會有所講解 現在可以說一下了,其實user和其他的基本型別是一樣的,只不過我們將其與前面的封裝屬性值分離開來了,當前這種稱為領域...