会话层数据交换过程示例-阿里云开发者社区

开发者社区> 云计算> 正文
登录阅读全文

会话层数据交换过程示例

简介:
以下内容摘自笔者的《网络工程师必读——网络工程基础》一书(如感兴趣,可加入我的圈子:[url]http://group.51cto.com/lycb[/url]):
    以下是一个典型会话连接流程,其中用到了绝大多数典型会话层服务原语。这个示例是首先由用户1向用户2发送一个个的数据块,因故障在中途出现了故障。然后用户2向用户1请求令牌以向用户1发送数据。
     用户端 1     方向    用户端2             说  明 
    (1)S-CON.req   →     S-CON.ind  # 用户1向用户2发送会话连接请求(包括选择功能单元和分配令牌),在用户2上会收到一个相应会话连接指示。
    (2)S-CON.cnf   ←     S-CON.rsp  # 用户2响应用户1的连接请求,用户1会立即进行确认。      
    (3)S-ACT_START.req   →    S-ACT_START.ind  # 用户1向用户2发送开始一个会话活动请求,同时在用户2上得到相应活动开始指示。 
    (4)S-DATA.req        →    S-DATA.ind     # 用户1向用户2发送数据传送请求,同时在用户2上得到相应数据传送指示。 
    (4)S-SYNC-MINOR.req  →    S-SYNC-MINOR.ind  # 用户1向用户2发送在传送的数据块中插入一个次同步点请求,同时在用户2上得到相应指示。
    (5)S-SYNC-MINOR.cnf  ←    S-SYNC-MINOR.rsp # 用户2向源用户1发送在传送的数据块中插入一个次同步点响应,同时在源用户1上得到相应确认。
    (6)S-SYNC-MINOR.req  →    S-SYNC-MINOR.ind  #  用户1向用户2发送在第二块传送的数据块中插入一个次同步点请求,同时在用户2上得到相应指示。
    (7)S-SYNC-MINOR.cnf  ←   S-SYNC-MINOR.rsp  # 用户2向用户1发送在传送的第二块数据块中插入一个次同步点响应,同时在用户1上得到相应确认。
    (8)S-DATA.req       →    S-DATA.ind   #  用户1向用户2发送数据传送请示,同时在用户2上得到相应的指示。 
    (9)S-TOKEN-PLEASE.ind  ←    S-TOKEN-PLEASE.req  # 用户2向用户1发送一个请求数据令牌的请求,以验证用户1是否有资格发送数据,该请求在用户1上得到相应指示。
    验证通过后,用户1开始发送数据。当用户1数据发送完毕,要把数据发送权限交给用户2时进行以下步骤:
   (10)S-ACT-END.req     →    S-ACT-END.ind   #  用户1向用户2发送活动结束请求,在用户2上得到相应指示。 
   (11)S-ACT-END.cnf     ←     S-ACT-END.rsp     # 用户2向用户1发送活动结束响应,然后用户1进行会话结束确认。 
   (12)S-TOKEN-GIVE.req  →   S-TOKEN-GIVE.ind  # 用户1向用户2发送给予数据令牌的请求,在用户2上得到相应指示。
   (13)S-ACT_START.ind   ←   S-ACT_START.req; # 用户2获得令牌后向用户1发送活动开始请求,在用户1上得到相应指示。 
   (14)S-DATA.ind        ←   S-DATA.req        # 用户2向用户1发送数据发送请求,在用户1上得到相应指示。
   (15)S-SYNC-MINOR.ind  ←   S-SYNC-MINOR.req  # 用户2向用户1发送在传送的数据块中插入一个次同步点请求,同时在用户1上得到相应指示。 
   (16)S-SYNC-MINOR.rsp  →    S-SYNC-MINOR.cnf  # 用户1向用户2发送在传送的数据块中插入一个次同步点响应,同时在用户2上得到相应确认。
   (17)      ←     S-DATA.req ;   # 用户2向用户1发送数据传送请求,但假设由于某故障原因,用户1未能收到请求。 
   (18)S-P-EXECP.ind    ← → S-P-EXECP.ind  # 用户2和用户1相互发送提供者故障报告指示。
   (19)S-CON.ind        ←    S-CON.req      # 用户2向用户1发送重新连接请求,用户1收到后得到相应指示,重新进行会话连接。  
   (20)S-CON.rsp        →    S-CON.cnf  #  用户1向用户2发送连接响应,在用户2上得到确认。
   (21)S-ACT-RESUME.ind   ←    S-ACT-RESUME.req   # 用户2向用户1发送恢复活动的请求,在用户1上得到相应指示。 
   (22)S-DATA.ind       ←    S-DATA.req  # 用户2继续向用户1发送数据传送请求,在用户1上得到相应指示,重新恢复数据传送。
本文转自王达博客51CTO博客,原文链接http://blog.51cto.com/winda/6264如需转载请自行联系原作者

茶乡浪子

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: