




已阅读5页,还剩74页未读, 继续免费阅读
(纺织材料与纺织品设计专业论文)织物cad网络系统.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
abs tract i n t h i s p a p e r t h e a u t h o r m a d e a n v a l u a b l e a t t e m p t t o f a b r i c c a d n e t w o r k s y s t e m t h r o u g h a n a ly s i n g , r e s e a r c h i n g a n d a c c o m p l i s h i n g t h e n e t w o r k s y s t e m .t h e p a p e r e m p h a s i z e d t h e i n s t i t u t i o n p r i n c i p l e , f u n c t i o n a n d t e c h n i q u e c o m p l e t e m e n t o f t h e s y s t e m .t h e a u t h o r o p t i m i z e d a n d d i g i t i z e d t h e f a b r i c p a r a m e t e r s a f t e r s t u d y i n g t h e t r a d i t i o n a l f a b r i c d e s i g n t e c h n i q u e . c l i e n t/ s e r v e r m o d e , u d p p r o t o c o l a n d t c p p r o t o c o l a r e a d o p t e d .t h e p r o g r a m m e d e s i g n a c c o m p l i s h e d t h e c o m m u n i c a t i o n o f t e x t a n d p i c t u r e t h r o u g h t h e s o c k e t ,p a v i n g t h e w a y f o r d a t a e x c h a n g e a m o n g c l i e n t s a n d s e r v e r s .a n e w p 勿s i s a l m o d e l s y s t e m c a m e o u t o f t h e e x i s t i n g p h y s i c a l m o d e l s y s t e m .t h e n e w s y s t e m s i m p l i f i e d t h e f a b r i c d e s i g n p r o g r a m m e , a c c e l e r a t e d t h e f a b r i c d e s i g n s p e e d ,i n c r e a s e d t h e t e x t i l e t e c h n iq u e c o m m u n i c a t i o n e f f i c i e n c y a n d l a i d t h e b a s e f o r n o p a p e r f a b r i c d e s i g n . k e y wo r d s : f a b r i c , c o m p u t e r a i d e d d e s i g n , n e t w o r k , c l i e n t / s e r v e r , t c p / i p , s o c k e t 、愧,. 第一章 概述 1 . 1 国内 外研究状况 计算机在现代纺织行业中起着举足轻重的作用,其中 c a d系统是 一重要的技术分支。 目前国内外的纺织 c a d系统种类繁多发展很快。国内的纺织 c a d 系统主要有:浙江工学院的素织物计算机 c a d系统,浙江大学经纬自 动化公司的 c a d系统,山东淄博宝铃纺织机电公司的 c a d / c a m系统, 中国纺织科学研究院的 c a d系统,香港汉兴电脑机械有限公司的纺织 品图案花纹设计系统。相对于国内来讲,国外的纺织 c a d系统水平较 高,其中日 本的 4 d b o x 、英国的博纳斯及英国的 d e s i g n c o m是国际声 誉较高的代表性系统。 浙江工学院的素织物设计系统能达到 2 0 世纪 8 0 年代的国际水平。 该系统是单机软件,能完成棉织物和丝织物的工艺规格计算,能根据 纹板图和穿综图得到组织图,能进行基本的图形编辑。这是一个比较 基础的设计系统。与之相比,浙江工学院与金铃丝绸设计公司联合设 计的电脑提花与纹板设计系统在图形处理及输入输出方面有了一定的 提高,与其它配套机器的接口功能增强了,但与国内比较先进的 c a d 系统相比,其处理图形的质量还不算高。 浙江大学经纬公司的 c a d系统主要有美术图案创作智能系统和纹 织 c a d系统。美术图案创作智能系统在国内曾获多次奖项,曾在国际 博览会得到国际人士的好评,其主要功能是进行图形创意,应用于各 图形使用单位,但其在纺织上的专业性不是很强。其纹织 c a d系统是 纺织行业比较专业的提花系统,它包括电脑商标写花系统,电脑提花 圆机花型设计系统,电脑提花横机花型设计系统,电脑印花系统。电 脑商标写花系统能完成基本的图形输入输出、编辑及组织处理功能, 一个突出优点就是与各类打板机的接口良好;横机系统的图形功能比 较基本;电脑印花系统是大幅印花图形设计系统,图形编辑功能有了 很大进步。 山东宝铃公司的 c a d / c a m系统产品主要有电脑意匠纹织系统和电 脑印花分色描稿系统。有较强的工艺设计及图形功能且与提花机的连 接兼容性好,能广泛适用于各提花行业。继意匠系统之后的分色描稿 系统是一个网络环境系统,工作站运算速度快,图形处理功能强大, 多个终端同时编辑,软硬件的兼容性好,但它的网络只是自己的局域 并行编辑及计算,而且造价很高。 前儿个系统在工艺设计及接口方面有较强的能力,但在图形效果 方面,纺科院的 c a d系统显得更有优势,中国纺织科学研究院开发的 系列织物c a d 系统和新推出的高级织物c a d 系统有近5 0 套被国内毛纺 厂和色织厂采用,产品分布于 1 6个省市,性能达到 2 0世纪 9 0年代 国际先进水平,价格只有国外同类产品的八分之一,实践证明效益良 好。此系统突破性的进展是织物的全真模拟功能,尤其系统的毛织物 效果模拟非常逼真。它针对毛织物较多的采用散毛染色后混纺加工及 后处理中的缩绒起毛工艺,对毛织物的特殊外观进行模拟。它能根据 组织、纱线排列、纱线种类及所选择起毛的形色模拟起毛外观和起毛 隐藏织纹和花纹的效果。 香港汉兴电脑机械有限公司的纺织品图案花纹设计系统主要包括 c h e c k m a r k e r , t e x -s i m和 t e x -s t y l e 。这个系统的主要功能是花纹 图案设计。c h e c k m a r k e r ,工艺设计速度快,图案效果好,具有网络传 递功能,能把生成的图案通过电话线传递到需要的地方。t e x -s i m除 具有 c h e c k m a r k e r的 全部功能外,可设计更精密的 梭织图案,能设计 多款多色三层纱线。它的图形功能更强大,能编辑高密织物,其仿真 效果与真纺织品外观无异。并且可用t e x -s i m 充实商业网络系统, 用 以提高纺织品的交易效率。t e x -s y l e可以接收多种输入,图形功能 也很强,能设计多种效果逼真的针织和梭织图案。 日 本著名服装公司 j u n开发的 4 0 b o x是一个用于服装款式、色彩 及面料的计算机辅助设计系统,包括三个软件包。机织面料设计软件 包,通过对面料的组织、纱线和格形的设计,生成丰富多彩的仿真面 料;针织面料设计软件包,通过对彩色组织图案的设计,设置针圈大 小、形状和针法记号,生成足以乱真的手编或针织面料图案;款式效 果及花样设计软件包,能生成纺织面料、花样的服装款式及各类室内 装饰物的效果图,花样能自由设计、自动分色和配色,重复描绘及展 开。 英国博纳斯 ( b o n a s )电子提花系统是一个集管理、工艺计算和图 形编辑于一身的网络控制系统。这个系统在博纳斯电子提花机和定位 于工厂任意位置的中央电脑之间提供双向通信。这个可靠的通信联系 大幅度的提高了提花机的效率。中央电脑可为每台提花机安排将要织 造的任务,能为每台提花机定期安排生产计划表,并传入每台提花机; 可把布料规格 ( 如花样、设计编号、花组数量、投梭密度、纬纱色彩 和支数)和织造设计一同 传送到提花机控制器并显示;可以向工人传 送即时的特殊要求;能迅速向 提花机传送 c a d系统变化,并把提花机 状态信息反馈到中央电脑显示屏。 博纳斯系统的c a d 部分 ( 博纳斯f r e e s t y l e -x系统)有强大的工 艺设计、图形编辑和全真模拟功能,处于国际领先水平。最新又推出 了个人电脑编辑 ( p c e d 工 t ) 系统及辅助系统个人电脑编织 ( p c w e a v e ) . 个人电 脑编辑系统在不使用 c a d系统的情况下能对提花设计进行修 改;也可以在c a d系统运行中,不中断c a d系统而对设计进行修改, 操作灵活,方便实用。个人电脑编辑系统和个人电脑编织系统联用可 组成一个方便快捷的小型设计系统。 英国n e d g r a p h i c 公司设 计的d e s i g n c o m 计算机辅助设计软件能使 用户与产品设计者实时地联系。它有一个与大型数据库连接的 w e b服 务器。它的设计结构使用户能访问生产公司的档案库,能生成产品的 清单,选择产品配色,使用户逐不出户就能通过网络得到三维显示产 品效果图。 目 前的纺织 c a d系统在图形处理及系统的综合运用方面有很大的 优势,但主要都是单机或局域网控制系统,网络交互传输功能远未得 到开发和运用,价格也比较高,较难为多数用户所接受。 1 . 2 课题的提出 国内外 c a d系统的单机和单位局域网功能比 较强大,虽然国外的 c a d 系统引入了i n t e r n e t 功能, 但其广域网功能远未得到开发,相比 之下,国内的 c a d系统局域网水平仍然很低。系统技术较封闭,不利 于技术交流,且价格高,不能 普及, 延缓了 技术的 发展。如果 c a d系 统网络化,各单位和个人就可以 进行技术交流,取长补短。拥有设计 系统的单位或个人可为没有设计系统的单位或个人提供技术服务。目 前,单位和个人拥有不足万元的网络计算机己经相当普遍,所以设计 一套个人电脑纺织网络通信软件,对加强技术交流推动技术发展是非 常必要的。 w i n 9 5 , w i n 9 8操作系统提供了 t c p / i p网络协议编程接口,这个 接口 不仅能提供双向的、可靠的、有序的、无重复的、无边界的投递 数据流而且能提供快速用户数据报。通过网络编程实现上面的提法是 完全有可能的,且比单纯的 f t p或电子邮件有更强的交互性,反应速 度快,通信费用低,有利于单位和个人普及使用。 第二章 基本原理 模式的主要构成:客户一网络一客户,客户一网络一服务器。本 课题与之对应设计成客户与客户通信系统和客户与服务器通信系统。 客户一网络一客户模式是指通信双方处于对等的位置,没有客户 机与服务器之分。 客户一 网络一服 务器模式采用 的是客户/ 服务器模 式 ( c l i e n t / s e r v e r m o d e l ) 。 us 模式: 在t c p / 工 p网 络应用中, 通信的 两个进程间 相互作用的 主要模式是客户机/ 服务器模式,即客户向服务器发出服务请求,服务 器接收到请求以后,提供相应的服务。客户机/ 服务器模式的建立基于 以下两点:首先,利用网络的原因是网络中的软硬件资源、运算能力 和信息不均等,需要共享,从而造就拥有众多资源的主机提供服务, 资源较少的客户请求服务的交互作用。其次,网间进程通信完全是异 步的,相互通信的进程间既不存在父子关系,又不存在共享内存缓冲 区,因此需要一种机制为希望通信的进程间建立联系,为二者的数据 交换提供同步, 这就是基于客户机/ 服务器模式的t c p / i p . 两种模式通信的原理图如下: 服务器 原理说明:服务器有三个层次 ( 请求层、回答层、征解层)处于 “ 中心”位置,时刻等待用户的请求。当有客户发来请求时,把请求 并放4 信息放入 “ 请求层” 。对于 “ 非征解请求” ,服务器可以自行处理, 把处理结果放入 “ 回答层”以待返回给原用户;也可以把 “ 请求” 入 “ 征解层”以向其他用户征解。对 “ 征解请求” ,服务器查询 “ 征解 层” ,如有 “ 征解” ,从 “ 征解层”发送 “ 征解”给请求用户;此用户 处理问题以后把结果返回服务器 “ 回答层”以便服务器返回给最初请 求用户。此外,用户之间也可以进行端对端的对话及信息量较小图形 的传送。 第三章 t c p / i p与wi n s o c k 3 . 1 t c p / i p 简 介 t c p / i p协议并不是专指 t c p和 i p m 、 议,它是 i n t e rn e t 网中普遍 使用的协议族的统称。t c p协议主要包括 t c p和 u d p协议,它们建 立在网络模型的传输层的基础之上,为应用层提供服务。 3 . 1 . 1 t c p ( t r a n s p o r t a t i o n c o n t r o l p r o t o c o l ) 传输控制协议 如果说i p 提供了一个i p 地址用于标识网络中唯一的计算机, t c p 提供了一个应用程序的端口号,用于标识计算机上的唯一进程。i p地 址+ 端口 号唯一标识了唯一计算机上的唯一 应用程序( 或进程) 。 端口 号 是面向进程间通信的。 t c p对应主机到主机层负责源主机到目的主机的传输协定,而在 通信途中路由器不会用到这一层。 t c p 所做的工作: 首先,对协议数据单元加以编址,即加上一个端口号,使之能识 别所有要访问的进程。 第二,错误检查。 第三,主机与主机通信的额外开销问题。 t c p的特点:( 1 )面向字节流的。( 2 ) 虚电路连接。当一个应用 程序开始启动t c p时,主动方和应答方的t c p模块就开始相互通信。 两端的t c p模块都建立虚电路的状态信息。( 3 )缓冲传送。( 4 )无结 构流。 t c p流服务不为数据提供结构划分,对于传送的应用数据不负 责记录边界或内容标识,这些工作留给使用服务的应用程序去做。( 5 ) 全双工的连接。 3 . 1 .2 u d p ( u s e r d a t a g r a m p r o t o c o l ) 用户数据报协议 u d p协议与 t c p 协议一样也是建立在 i p协议之上,同i p 协议一 样提供无连接数据报传输。相对于i p协议,它唯一增加的功能是提供 协议端口以 保证进程间的通信。一个u d p端口是一个可读写的软件结 构,内部有一个接收报文的缓冲区。 发送报文时u d p软件构造一个数据报,然后将它交给 i p软件, 使之完成所有的其它工作。接收数据时,u d p先判断接收数据报的端 口与当前所使用的某端口是否相匹配。假如相匹配,将该数据放入相 应的接收队列,否则抛弃该数据报,向信源端发送端口不可到达的 i c mp报文。虽然端口匹配成功,但是如果相应的队列已满,u d p也 要抛弃数据报。 u d p协议是一种无连接的不安全的协议,应用层程序设计中不但 要控制其流量以免快速主机的发送淹没慢速主机的接收,还要进行安 全到达确认处理。 3 .2 s o c k e t 与win s o c k s o c k e t 原是b s d为了u n i x支持互连网通信而设计的4 . 3 b s d u n i x 版本中的 a p i ,它采用客户机/ 服务器模式的通信机制,使网络客户方 和服务器方通过s o c k e t 实现网络之间的连接和数据交换。根据互联网 的进程通信特点,网中全局标识一个进程需要一个二元组 ( 协议,本 地主机地址, 本地端口 号) 来描述,而一个完整的进程通信实例则需 要一个五元组 ( 协议,本地主机地址,本地端口号,远程主机地址, 远程端口 号) 来描述。s o c k e t描述的是进程的三元组。客户与服务器 进程通信时首先建立各自的 s o c k e t ,而每个 s o c k e t拥有一个本地唯 一的s o c k e t 号,且服务器的s o c k e t 三元组为全局所公认。 这样客户 进程根据服务器的公认地址就可以建立一个完整的相关五元组 ( 协议, 本地主机地址,本地端口 号,远程主机地址,远程端口号) 。一旦相关 建立 ( 即连接建立) , 就可以 对s o c k e t 进行访问 ( 如发送/ 接收数据) 从而实现网络功能。 s o c k e t 有s t r e a m( 数据流)s o c k e t d a t a g r a m( 数据报) s o c k e t 和r a w( 原始)s o c k e t 三种主要类型。数据流s o c k e t 是t c p 传输协议 接口,它定义了一种可靠的面向连接的服务。实现了无差错,无重复 的顺序数据的传输。数据流s o c k e t 通过内置的流量控制,解决了数据 的拥塞,应用程序可以发送任意长度的数据,将数据当作字节流。数 据报s o c k e t 是u d p 数据报服务的接口, 它定义了一个五元连接的服务。 数据报通过相互独立的包进行传输,包的传输是无序的。并且不保证 是否出错、丢失和重复。包的最大长度可达 3 2 k b ,隐含长度为 8 k b o 原始s o c k e t 接口允许对低层协议如 i p 和 i c m p 的直接存取,主要用于 新的网络协议实现的测试等。 w i n d o w s 操作系统成长起来以后把 s o c k e t引入,并对消息、网络 事件的异步存取接口 加以 扩充成为w i n s o c k o w i n s o c k 规范规定, 所有 的厂商共享一个公共文件 w i n s o c k . h和一个公用 w i n s o c k接口库 w i n s o c k . l i b 。网络应用程序运行时, 可以 使用由 任何一个厂商提供的 兼容的w i n d o w s 动态链接库w i n s o c k . d l l e 许多面向对兔的编程语言都引入了w i n s o c k 控件或 w i n s o c k . d l l e 一些结构化语言引入了 s o c k e t() 函数集。 本文采用 v b 6 . 0编程语 言进行程序设计,主要通信功能是依靠 w i n s o c k控件 ( 也称套接字) 来完成的。 3 . 2 . 1 wi n s o c k 控件的 基本知识 表1 w i n s o c k 控件的主要属性 b y t e s r e c e i v e d l o c a l h o s t n a m e l o c a l i p l o c a l p o r t p r o t o c o l r e m o t e h o s t r e m o t e h o s t l p r e m o t e p o r t s o c k e t h a n d l e s t a t e 返回接收到的 ( 当前接收端缓冲区)数据的数量 返回本地计算机名 返回本地计算机的i p 地址 返回或设置所用到的本地端口号 返回或设置w i n s o c k 控件所使用的协议 返回或设置远程计算机名 返回远程计算机的工 p 地址 返回或设置要连接的远程端口 返回一个套接字的句柄刘应值 返回控件的状态 表2 w i n s o c k控件的 主要事件 c l o s e c o n n e c t c o n n e c t i o n r e q u e s t e r r o r s e n d c o m p l e t e s e n d p r o g r e s s 远程计算机关闭连接时出现,应用程序应正确使 用该方法关闭t c p 连接。 远程计算机连接时出现。 远程计算机请求连接时出现。 只要后台处理出错 ( 如连接失败,或在后台收发 数据失败)事件就会出现。 完成一个发送操作时出现。 发送数据期间出现。 表3 p r o t o c o l 的取值 常数 值说明 s c k t c p p r o t o c o l s c k u d p p r o t o c o l 代表 t c p 协议 ( 缺省) 代表u d p 协议 表4缺省的端口 号 常数说明 h t t p fi 尸 通常用于w o r l d w i d e w e b连接 f t p sc21 表5 s t a t e( 状态) 属性的取值 常数值说明 n山八j刀性douc廿 s c k c l o s e d s c k o p e n s c k l i s t e n i n g s c k c o n n e c t i o n p e n d i n g s c k r e s o l v i n g h o s t s c k h o s t r e s o l v e d s c k c o n n e c t i n g s c k c o n n e c t e d s c k c l o s i n g s c k e r r o r 关闭,( 缺省) 打开 侦听 连接挂起 识别主机 已识别主机 正在连接 己连接 同级人员正在关闭 错误 表6 w i n s o c k 控件的主要方法 a c c e p t b i n d c l o s e c o n n e c t g e t d a t a 处理c o n n e c t i o n r e q u e s t事件时用它接受新连接,仅适用 于t c p 服务器程序。 指定用于t c p 连接的l o c a l p o r t 和 l o c a l i p , 对于客户机或服务器应用程序关闭t c p 连接或侦听套接 字。 客户机连接服务器, 仅适用于t c p 连接。 获取当前的数据块并将其存储于v a r i e n t 类型的变量中。 l i s t e n p e e k d a t a 创建套接字并将其设置为侦听模式,仅适用于t c p 连接。 与g e t d a t a 相似,但不从输入队列删除数据,仅适用于 t c p 连接。 s e n d d a t a 将数据发送给远程计算机。 3 . 2 .2 wi n s o c k 的典型实现 服务器与客户通信的实现:服务器与客户是不对称的,服务器首 先启动并被动等待,然后在某一时刻启动一客户与服务器建立连接。 服务器与客户开始都必须用 wi n s o c k控件建立一个套接字,然后服务 器调用 b i n d方法将套接字与一个本地地址捆绑在一起,再调用 l i s t e n 方法,使套接字处于一种被动的准备接收状态,这时,服务器就可以 调用 a c c e p t 方法接收客户的请求以 便建立连接。 客户打开套接字以 后,便可以通过 c o n n e c t 方法和服务器建立连接,连接建立以后,服 务器和客户之间就可以通过这个连接发送和接收数据,待数据传送结 束之后,双方调用 c l o s e方法关闭套接字。实现思想的基本流程图如 下: 服各器 wi n s o c k 建立流式套接字,返回套接字 b i n d方法将套接字与本地地址绑定 客户 l i s t e n 方法通知服务器准备好接收连接 w i n s o c k建立流式套 接字返回套接字 a c c e p t 方 法接收连 接并得到 下一个套接字 立连接 c o n n e c t方法将套接 字与远程主机连接 g e t d a t a / s e n d d a t a在套接字上 读/ 写数据至数据交换完毕 请求/ 回答 s e n d d a t a / g e t d a t a在 套接字上写/ 读数据 至数据交换完毕 c l o s e 方法关闭此套接字 c l o s e 方法关闭最初的套接字 客户与客户之间通信的实现:客户与客户之间处于平等位置,没 有客户与服务器之分,客户在获知对方i p 地址和端口号的前提下,通 过 b i n d方法绑定自己的端口就可以进行端对端的对话了。流程图如 下: 区;如果不是 1 k 的整数倍,需要设置动态发送缓冲区,根据将要推 入数据的长度改变缓冲区的大小,逐帧发送。在发送数据的运作过程 中要先把图形数据的总一长 度发送出去,以便对方确定接收缓冲区及接 收数据包的大小。如果发出的数据在3 0 秒内没有得到确认,就要重新 发送。基本的机制为: 发送数据包 等待对方确认的到来 一 - 结束 发送数据的流程如图4 - 2 e 在这个机制的运作过程中,发送与确认避免了拥塞的发生。当 然, 绝对的避免是不可能的。因为即使是t c p这样安全的协议机制也难于 避免拥塞的发生。在此过程中,图形帧发送出去以后,确认没有到达 之前,系统可以响应其他的消息和事件,使系统不会处于死锁状态。 2 ) 接收机制 接收图形与接收文本及控制字符使用单独的 wi n s o c k接口控件使 得图形的接收易于实现。 接收到的控制字符如果有 “ e n d d ”标志,它携带着图形数据的 总长 度,本地机计算出数据包的个数即i咳 数,计算出所需缓冲区的大 小,缓冲区因数据包的大小而动态的变化;接收到的控制字符如果有 o k o k ” 标志,本地机就可以 把发送控制标志 “ s e n d f l a g ”设置为 t u n e ,本地机就可以继续发送图形数据了。这种发送和接收机制解 决了发送速度与接收速度不一致而造成的拥塞及数据的丢失问题。 在图形接收过程中,一帧数据到达以后,系统把接收到的数据放 入内存,然后发送数据到达标志 “ o k o k ,直到接收完毕。 数据接收的基本流程如图4 - 3 . 1 开 始 1 接收 数据 je - - 2 是文木? 接收数据并装入文本框 n一 一 友 是神制字符? 亩 . n 图形数据计算 标拱 夏 县 ok o k ? s e n d f l a g = t r u e 标志是 e n d d ? 飞、r 计算接收数据的总长度 值得说明的是,此系统是祸合式系统,两个相同的系统之间进行 通信,所以程序设计中要特别重视祸合性,尤其数据的发送与接收更 是如此。 第六章 客户/ 服务器系统一服务器端 服务器系统是客户/ 服务器系统的核心,u 寸 刻处于运行状态,它是 响应客户的主要来源,是客户与客户交流的枢纽。承担着解答疑难问 题和传递疑难问题、服务时间分配及进程调度的主要任务。这些动作 都是自 动完成的。除此之外,服务器还有手动更新、配置及解答问题 的功能。 6 . 1 服 务 器 系 统 的 两 个 配 置 文 件 服务器系统有两个配置文件: c o n f i g l .r n d 和 c o n f i g 2 .m d 。 这两个 配置文件作为数据文件而存在,是服务器系统运作其它数据的基础, 它们的数据是当前服务器可交流数据存储状态的记录。 ( l )c o n f i g i . r n d 它以记录的形式记录着服务器上现有数据的状态。对于服务器系 统现有数据,服务器采用一个结构体进行管理,结构体的定义如下: p r i v a t e t y p e p r o b l e m f i l e n a m e s a s s t r i n g * 2 4 a d d r e s s a s s t r i n g * 1 5 a s k wo r d a s s t r i n g * 6 s e t wo r d a s s t r i n g * 6 s e t o u t a s s t r i n g * 4 s e t t l e a s s t r i n g * 4 k i n d a s s t r i n g * 3 y e t a s s t r i n g * 1 e n d t y p e 其中: f i l e n a m e s ,是 2 4位的文件名字,客户有请求发来,如果需要进 行文件操作,f i l e n a m e s作为文件名变量而存在。文件名在服务器的 同一个目 录下要求具有唯一性,本系统用时间和日期数字表达文件名。 f i l e n a m e s = p a t h + f o r m a t e ( d a t e , m m d d y y ) + f o r m a t ( t i m e ( ) , h h m m s s ) + ” + 后缀,这样具有唯一性。 其中 p a t h ,为安装程序系统时系统自 动定义的路径。文件名可以 定义的很长如 2 5 5位。文件名的后缀在此系统中主要有两种 “ t x t 和 “ b mp o a d d r e s s ,民 度为 1 5 ,为与服务器进行数据交换客户的 i p地址, 木系统现在并未用到这个变量,为以后服务器的功能扩展使用,作为 服务器识别可接受客户并跟踪客户的依据。 a s k w o r d ,表示客户的请求密码,客户向服务器发送请求,请求 疑难问题,请求的客户将获得一个密码,作为下次对该问题操作的口 令而存在。密码是唯一的,( 同时,客户对该问题的解答权在一定时间 内是唯一的,其他客户无权访问该问题。 )它是服务器系统产生的一个 六位的随机数。 s e t w o r d,用户有疑难问题要向服务器征解,在把疑难问题发送 给服务器以后获得一个服务器分配的密码,这个密码为该用户唯一持 有,不会因时间而发生变化,它也是系统产生的一个六位随机数。 s e t o u t ,长 度为 4位,用来表达存储文件的发出状态。状态有两 干 中 取值 s e n d ”与“ ”( 即空) 。如果这个疑难问题已经发送给请求 解答疑 难的客 户, 变 量的 表达 式为“ s e n d ,同 时记 录在 c o n f i g l .rn d 文件中;如果未发送给请求解答疑难问题的客户,此变量为空。 s e t t l e ,长 度为 4位,它的状态有两种 “ d o n e ” 和 “”( 即空) , d o n e ” 表示存储在服务器系统上的一个疑难问 题已 经解决: “ 空” 表示存储在服务器系统上的一个疑难问题没有解决。它表达了疑难问 题的解决与否。 k i n d ,长 度为 3位,记录着文件的操作过程中文件的种类。服务 器系统定义了三利 , 文件属性, t x t , t b t , b mp % k i n d的值不 同,说明系统参与了不同的操作过程,其中, t x 丁 ” 、 t b t ” 都是文 本或字符类型的操作 ( 这里所说的字符操作及文本操作是指服务器的 本地操作) , b m p ”为图形文件数据操作。当它们以数据的形式进行 传输时,都以二进制字节的形式进入网络。 y e t ,长度为 1 位,状态有两种 “ 工 ”或 “” 。状态为 “ 1 ”说明该 文件所需的操作基本完成,服务器可以在系统更新时对其进行删除处 理, “ 空”表示基本操作有待完成。 服务器以p r o b l e m结构记录的 形式对c o n f i g l .r n d 进行读写。 ( 2 ) c o n f i g i r n d 此文件结构非常简单,设定该文件的操作长度为4 0 4 位的字符串 数字记录着当 前服务器所能 运作的c o n f i g l .m d 中 记录的 个数 ( 既有空 记录又有非空记录) , c o n f i g 2 .r n d是记录检索的 依据, 将来用它来管 理日 志文件。 6 .2 服 务 器 通 信 状 态 的 跟 踪 服务器在主界面上设置了一个状态监控栏,这个状态监控栏能显 示服务器的通信状态。跟踪服务器通信状态的方法是调用一个状态函 数,对当前的通信状态进行跟踪,而后把通信控件的状态显示在界面 的状态监控栏。 ( 1 ) 状态数组 设定一个状态数组 :n v n t s o c k e t s t a t e ( ) 为变体数组, 这个数组在服 务器启动以后,被赋予了十种状态: c l o s e服务器关闭 o p e n w务 器 打开 l i s t e n i n g服务器处于侦听状态 c o n n e c t i n g服务 器正 在连接 c o n n e c t in g p e n d i n g服务 器与客 户的 连接挂起 r e s o l v i n g h o s t识别主机 ( 正在进行) h o s t r e s o l v e d己 经识别的 主机 c o n n e c t e d服务器己 经建立连接 c l o s i n g同 级人员正 在关闭 连接 e r r o r服务器通信发生错误 ( 2 )状态函数s h o w s o c k e t s t a t e ( i n d e x a s i n t e g e r ) 它的主要功能是对当前的服务器的动作进行跟踪,然后,把状态 加入状态监控栏。 状态监控栏采用的控件为列表框控件,每个栏目能 显示一个状态。在此系统中,它的最大显示状态栏目数为 1 0 0 。当服 务器动作时,通信状态变化超过 1 0 0时,服务器能自 动对状态监控栏 中前面的状态进行清理,以空出若干栏目 对服务器现在的通信状态进 行显示。状态函数的运作流程图如下: 通过服务器状态数组获得当前套接字的状态 把当前状态添加入状态监控栏 状态栏指针下移一栏 当前栏序数大于状态栏可0 1y 示的最大数目? 用循环对状态栏清理 状态栏索引刘当前的序号进行记录 状态栏当前指针放在第一空白栏 图 6 一 1 6 .3 服 务 器 端 的 流 式 套 接 字 关于套接字在前面己经进行了基本介绍,这里就服务器系统做具 体的应用介绍。主要的通信接口控件 wi n s o c k( 也称套接字)在服务 器端与在客户端有所不同。客户端是单任务的,而在服务器端有时是 多任务的,能接收多个客户的请求。服务器端的一个通信控件是一个 套接字数组的一项。一个套接字只能分配给一个客户,建立一条可靠 的t c p 连接进行通信。套接字所采用的协议为t c p ,与客户端的对应 协议相一致,在通信中能建立稳定的数据流。t c p协议是一个面向连 接的协议, 它允许创建和维护两台计算机之间可靠的、全双工的连接。 这类连接的建立类似于电话连接的建立,被称为网络上的虚电路。建 立连接以后,起逻辑标识作用的端口号被用来区分 “ 虚电路” 。在一个 t c p“ 虚电路”上,两台计算机就可以 彼此进行双向 通信。本系统的 启动过程中要设置一个侦听端口, 这可通过对通信控件的属性设置并 0 1 用侦听方法实现。 6 .4 任 务 数 组 客户与服务器.v建立一条连接即意味着要进行某项工作,服务器 系统把其定义为任务。服务器系统为了对系统的任务数进行跟踪设置 了一个任务数组,用来时刻跟踪服务器现在的任务数,用这个任务数 组配合通信控件数组的分配协调工作。这个动态任务数组定义如下: p r i v a t e m s t a s k i d ( ) a s s t r i n g 6 .5 队 列 跟 踪 数 组 队列跟踪数组的定义如下: p r i v a t e wa i t i n g ( ) a s wa i t f o r w a i t i n g ( ) 也是一个动态数组, 它的一 个主要作用是: 跟踪服务器系统 与客户所建立连接的数目;跟踪套接字的索引号;跟踪当前套接字的 工作类型;跟踪当前套接字的工作状态。 w a i t f o : 为自 定义的一个结构体变量: p r i v a t e t y p e wa i t f o r s o c k i n d e x a s i n t e g e r s o c k f l a g a s s t r i n g r u n f l a g a s s t r i n g e n d t y p e 4, , s o c k i n d e x是记录套接字索引号的队列接口控件索引标志。 s o c k f la g 是 记录 任务 类型的 标志, 它的 类型 有六种 取值: q t x ” 客户端向 服务器请求发送疑难文本操作; q s k ” 客户端向 服务器请求发送疑难问 题给自己 操作; q t b ” 客户端向 服务器请求回 送疑难解答文本操作; q m p ” 客户端向 服务器 请求回 送疑难解答图 形操作; q e q 客 户端向 服务器请求发送疑难文本解答给自己 操作 ( 解答可能为文本也可能为图形) ; q e f 客 户端向 服务器清 求发送参数操作标志。 这些标志都是由客户端发来的向服务器请求操作的类型。 r u n f l a g ” 用来判断某索引号标识的套接字是否在工作的运行 标志。 6 .6 服 务 器 的 主 界 面 服务器的主界面如图6 - 2 0 主界面即服务器系统应用程序运行以后的界而,此时,服务器并 没有进入工作状态 ( 在这里服务器的启动是指服务器进入侦听状态即 进入工作状态) 。要进入工作状态需要从此界面启动,要退出服务器系 统也要通过该界面。服务器的通信状态监控栏前面己经介绍,它的主 要作用是监视服务器通信状态,让服务器端的工作人员了解各个通信 控件的工作状态。服务器进入工作状态以后,可从主界面进入手动处 理状态。此外,从主界面可以通过系统信息按钮得到当前服务器所在 6 .7 服 务 器 通 信 控 件 的 具 体 事 柞 在系统的运行过程中,控件 wi n s o c k是通信的接口,在通信的连 接建立及数据的发送与接收过程中,不可避免地要触发一些 wi n s o c k 事件,这些事件的发生处于系统的监控之下,系统实时地在通信状态 栏显示这些事件状态。wi n s o c k控件的事件在前面己经进行了基本叙 述,这里就服务器功能具体叙述。 i , c l o s e事件,远程计算机关闭时发生,服务器应用程序应正确 调1 11 c l o s 。 方法关闭对应的t c p 连接。 服务器系统的c l o s e 事件处理: 与服务器连接的某台远程计算机断开与服务器的连接时,与那台 远程计算机建立连接的服务器对应接口 控件 w i n s o c k ( i n d e x ) 发生此事 件。此时,系统调用通信状态函数,把当前的接口控件的通信状态显 示在主界面。 如果当前的 接口 控件的 状态是 “ 正在关闭 ( c l o s in g ) , 清空与该接口控件对应的动态任务数组,标志该任务结束或停止:然 后,系统调用关闭接口控件的方法关闭该控件,调用通信状态函数, 在主界面显示该接口控件的通信状态。接下来要判断所关闭的接口控 件是否为侦听接口控件,如果是侦听接口控件,重新调用此接口控件 的侦听方法,使其重新处于侦听状态;如果不是侦听接口控件,服务 器就终止了一条通信链路:然后调用通信状态函数,把系统的侦听状 态显示于主界面。 此事件的工作流程如图6 - 4 . 图 6 - 4 2 , c o n n e c t 事件 此事件在本地机与远程机的连接建立完成时发生。囚为服务器启 动以后时刻处于侦听状态,所以此事件不会在服务器通信接口控件上 发生。 3 , s e n d c o m p l e t e 事i i i- 这个事件在发送动作操作完成时发生。对这个事件的监控,能把 数据发送完毕的消息及时报告给系统,使系统去处理其它的事件。 4 , s e n d p r o g r e s s 事件 这是一个发送进度事件,当系统知道己经发送了多少数据,就可 以和时钟配合使用,对系统的发送进度以明确的标识。 5 , e r r o r 事件 只要后台处理出现错误 ( 如连接失败,或后台接收数据失败)该 事件就会出现。系统在处理事务时,一旦有错,系统便把发生错误的 接口控件号、发生错误的错误号及发生错误的基本描述加入主界面状 态监控栏,同时调用通信状态函数,显示接口 控件的状态。 7 , c o n n e c t i o n r e q u e s t 事件 有远程计算机请求连接时出现。服务器在正常的运行过程中处于 被动等待状态,一旦有连接请求发来,服务器先把发生连接的接口控 件的索引号显示在主界面的状态监控栏;同时服务器把分配给该请求 的请求号也加入主界面的状态监控栏。接下来判断这个连接请求是否 发生在侦听控件 w i n s o c k ( 0 ) ,如果连接不是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国共享按摩椅行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030中国公园管理市场经营管理风险与竞争格局分析研究报告
- 2025-2030中国光敏传感器行业市场发展分析及发展趋势与投资前景研究报告
- 2025-2030中国停车场自动收款机行业市场发展现状及前景趋势与投资研究报告
- 2025-2030中国便携式环境传感器行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030中国伤寒沙门氏菌核酸检测试剂盒行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国休闲牛仔女装行业市场全景调研及投资价值评估咨询报告
- 2025-2030中国人造石英石(EQS)行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030中国云游戏行业市场发展前瞻及投资战略研究报告
- 2025-2030中国乳液行业供需趋势及投资风险研究报告
- 育婴行业前景及就业前景
- 2024年美容师考试理论回顾试题及答案
- Unit5Whatwereyoudoingwhentherainstormcame?SectionB1a-1d课件人教版八年级英语下册
- 2025年中铁快运股份有限公司招聘(98人)笔试参考题库附带答案详解
- 老旧城市燃气管道更新改造工程设计方案
- 中医经典临证思维与实践知到课后答案智慧树章节测试答案2025年春浙江中医药大学
- 动火和受限空间作业监护人考试题有答案
- 《高频电子技术》5振幅调制解调与混频电路
- 老年肺炎临床诊断与治疗专家共识解读(2025年)解读课件
- 制药废水处理工艺
- 2025年晋城职业技术学院高职单招数学历年(2016-2024)频考点试题含答案解析
评论
0/150
提交评论