SNDCP学习笔记三(服务功能理解)

原创 2007年10月04日 12:08:00

 1.N-PDU的多路复用

网络层使用的协议由动态分配的NSAPI来标识(dlmu2001:该NSAPI应该是在PDP激活时在SM层生成的,然后通过SNSM-ACTIVE.indication传递给SNDCP层的,其实相当于在此建立了网络层协议和NSAPI之间的对应关系)。SNDCP在收到N-PDU后,在发向下层之前会插入该NSAPI,对等实体收到底层数据后,会根据NSAPI来确定所使用的网络协议。

2.确认方式点对点LLC操作的建立和释放

1)建立准则

a.收到SNSM-ACTIVE.ind,该NSAPI的Qos配置要求使用acknowledged peer-to-peer LLC operation,但是对应的
   SAPI还未建立acknowledged peer-to-peer LLC operation
【dlmu2001】Qos中的Reliability class参数
b.收到SNSM-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发起的建立/重建流程
sndcp建立/重建流程

说明:
a.LL-ESTAB.req中可以包含XID参数,如果包含该参数
b.可能的结果:成功;失败;发生冲突后成功解决
c.收到LL-ESTAB.cnf表示建立成功;收到LL-RELEASE.ind表示建立失败,根据失败的原因,SNDCP层需要作出恰
  当的动作(比如通知SM子层)
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的释放

释放准则:收到SNSM-DEACTIVE.ind或者SNSM-MODIFY.ind且对应的SAPI不再有使用acknowledged peer-to-peer的NSAPI。

过程:调用LL-RELEASE.req,收到LL-RELEASE.cnf表示释放成功

3.N-PDU缓冲

1)N-PDU在压缩成分片并传输到LLC层之前,必须缓冲
【dlmu2001】这个缓冲使用哪一层的buffer比较好?网络层?
2)收到SNSM-DEACTIVE.ind会删除相关的NSAPI的对应缓冲
3)对于acknowledged方式的数据传输,缓冲必须被确认后才能删除(LL-DATA.cnf和SNSM.SEQUENCE可以完
     成该确认)。
4)对于unacknowledged方式的数据传输,传输完成就删除

4.投递顺序管理

sndcp层负责维护对等实体间每个NSAPI的N-PDU的投递顺序.

 

 

 

 

相关文章推荐

功能点分析法学习笔记

  • 2015年04月15日 22:22
  • 245KB
  • 下载

产品学习笔记5—理解场景比设计功能更重要

所有的产品无一例外都是在特定的场景下被使用,比如我们想搜索什么东西时会打开Google或百度(前者在国内悲剧),当我们要出行时会拿出滴滴出行或者Uber,当我们饿了时会拿出饿了么或者百度外卖,当我们寂...

功能点分析的学习笔记

  • 2009年06月04日 15:47
  • 105KB
  • 下载

ROS学习笔记六:理解ROS服务和参数

主要介绍ROS服务和参数,同时使用命令行工具rosservice和rosparam。ROS serviceservice是节点之间互相通信的另一种方式,services允许节点发送一个请求并接收一个回...
  • mountzf
  • mountzf
  • 2016年08月25日 20:54
  • 2098

linux网络编程学习笔记之三 -----多进程并发服务端

首先是fork()函数,比较清晰的解释可以参考http://blog.csdn.net/lingdxuyan/article/details/4993883和http://www.oschina.ne...

Netty4.0学习笔记系列之三:构建简单的http服务

本文主要介绍如何通过Netty构建一个简单的http服务。 想要实现的目的是: 1、Client向Server发送http请求。 2、Server端对http请求进行解析。 3、Server端向cli...

Openstack学习笔记之——Neutron-server服务加载与启动源码分析(三)

之前对于服务的加载与启动一直没有找到真正的源头,这次就来分析neutron真正是从哪里开始,并加载服务并启动的,在这里首先看Neutron-server的服务加载和启动。...

Dcm4chee学习笔记(三)--StoreSCP服务流程剖析

整理学习了下关于Dcm4chee里的Store SCP服务流程和类设计
  • omage
  • omage
  • 2017年06月25日 18:36
  • 305
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SNDCP学习笔记三(服务功能理解)
举报原因:
原因补充:

(最多只允许输入30个字)