基于ATM的分布式多媒体网络试验平台<2>
发布时间:2006-10-14 7:35:22   收集提供:gaoqian
基于ATM的分布式多媒体网络试验平台<2> SUN公司的ATM网卡实现了Q.2931中规定的UNI信令规范,称之为Q.2931呼叫控制 (Q.2931 Call Control,OCC),它包括两套功能相似的函数,一套运行在操作系统的 核心(Kernel)部分,另一套运行于用户空间(UserSPace),每一套函数都提供了建 立和解析Q.2931信令消息的功能,这是建立和拆除ATM连接所必须的功能。除此之外, 它提供一组Atm-util函数,用于处理应用与 ATM设备驱动程序之间的通信(在SUN ATM 软件当中,该设备驱动程序称之为ba)。 Sun ATM-155 Sbus网卡提供了建立 SVC所需的基本的Q.2931信令消息以及3类基于 Q.2931信令的系统调用,以完成连接的建立、拆除等功能。它们是: (1)Atm-util系列调用(不执行信令操作,只负责完成打开ATM设备、设定SAP业 务访问点等初始化工作); (2)基本OCC系列调用(实现UNI信令的基本功能); (3)扩展OCC系列调用(构造消息单元 IE,完成复杂的ATM UNI信令功能、 API中 QoS参数控制等)。 通过定义有关数据结构以及灵活运用3类信令调用,使接口函数提供下列基本的功能; (1)提供基本的Socket接口功能: (2)支持AAL5格式的Socket类型: (3)设置QoS参数 : (4)支持点到点通信和点到多点通信的PVC和SVC连接。 与普通的Socket接口相比,该系统需要注意下面几个问题: (1)与UDP/IP无连接的数据报服务相比,ATM提供了一种面向连接的服务,这就 意味着必须在API内部管理ATM的连接过程,对应用来说,看不到这个连接过程; (2)与32位宽的IP地址不同,ATM地址采用的是20字节长度,此外,UDP和TCP使用 BLLI和BHLI对此进行标识; (3)最重要的一点改进之处在于对QoS的支持,为了实现这一点,用户可以选择所 需要的QoS参数。 3.ATM上Socket过程 封装了API以后,在 ATM上开发应用的过程与传统的Socket编程基本相同。在客户 端首先使用“Socket’”函数建立一个Socket接口,该函数建立指定的地址格式、数据 类型和使用的协议类型。‘Bind’函数将建立服务器本地的半相关,将一个ATM的Socket 与一个特定的网络接口绑定到一起。由于此种方式下采用的是 ATM的 SVC连接,因此需 要为连接建立过程提供必要的参数,这些参数描述了应用接收或者发送数据的传输要求 等内容,该过程可以通过SetsockoPt调用来实现。Connect函数用于初始化一个SVC连接, 在指定远端接收方的 ATM地址以后, Setsockopt用于构造信令过程所需要的消息单元并 且尝试建立一个连接,在发出连接请求以后,Connect函数等待ATM网络或者远端的接收 方接受或拒绝该连接,在此过程中一直处于阻塞的等待状态。 在服务器一端,开始过程中Socket、Bind和Setsockopt调用与客户端相同,此后服 务器调用Listen函数开始侦听,然后通过AccePt调用等待接收连接。AccePt处于阻塞状 态;等待请求队列中出现新的请求。一旦有连接请求到来,该函数就建立一个新的套接 字,然后通过GetsockoPt函数检查客户端的要求以决定是否接受该连接请求,或者与客 户端进行协商。在此之后,调用SetsockoPt函数表示该连接已经被接受。服务器端还要 通过Setsockoot函数向客户端发送一些相应的参数。在TCP/IP协议中,不同类型的应 用使用不同的端口号来标识,例如Telnet使用23号端口,POP3使用110号端口,SMTP使 用25号端口等。在ATM网络中,通过BLLI的值来传递类似的信息。 接下来,就可以通过Send和Recv函数接收和发送数据了。Recv将从已经建立连接的 套接字接收数据放入缓冲区中,Send则将缓冲区中的数据发送给套接字。数据发送完毕 后通过Close函数关闭套接字。 如果对Socket编程十分熟悉的话,可以看出该实现过程与传统的基于TCP/IP的网 络通信过程非常类似,两者在实现过程与接口函数形式上基本相同,不同之处是这些接 回函数的实现方法以及新的编程接口在OOS方面所做的扩充。这样的话,TCP/IP上的应 用程序可以不做大的修改直接应用于ATM之上,也可以通过简单的修改,以使用新的编 程接口所提供的服务质量控制功能。 四,小结 本文介绍了一个基于 ATM的分布式多媒体网络支撑平台中底层建网和底层通信的一 些研究工作,在此基础上我们又针对两个应用(远程教学和视频会议系统)开展了基于 Native ATM的多媒体处理研究,限于篇幅,这些内容将在其他文章中讨论。 摘自《世界网络与多媒体》
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50