易语言程序设计 第十六章 网络程序编写 免费
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
<易语言程序设计>
作者:蔷薇的羽翼
第十六章网络程序编写
网络的飞速发展使得网络通信应用程序的开发越来越重要,易语言提供了对网络通信应用开发的支持.
16.1网络基础
计算机网络是由计算机集合家通信设施组成的系统,即利用各种通信手段,把地理上分散的计算机连接在一起,达到相互通信而其共享软件,硬件和数据等资源的系统.
16.1.1OSI参考模型
为了实现不同计算机的相互通信,国际标准组织(ISO)指定了一套计算机网络的标准,即开放系统互联网(Open System Interconnection,OSI),在此基础上指定了一个七层的体系结构,称之为开放系统互连参考模型(OSI/Reference Model,OSI/RM)
OSI参考模型中每一层都为上一层提供服务,并为上一层提供一个访问接口或界面,不同主机之间的相同层次称之为对等层.而对等层之间互相通信需要遵守一定的规则,称之为协议.从下到上依次为:
1.物理层(Physical Layer)
物理层规定了通信的物理和电气特征.为数据链路层提供了一个传输数据的物理连接数据按照比特(bit)流的形式传送.而不用去理会数据的含义和格式
2.数据链路层(Data Link Layer)
数据链路层负责监督数据传输,在不可靠的物理介质上提供可靠的传输,该层的主要作用有地址寻址,数据成帧,流量控制,数据的检错和重发等/
3.网络层(Network Layer)
网络层负责对数据包进行路由选择,即网络寻址..另外.网络层还可以实现拥塞控制,网际互联等功能.
4.传输层(Transport Layer)
传输层是处理端到达端通信的最底层,传输层负责将数据划分成数据段,并提供到端的,可靠的或不可靠的传输,.另外.传输层还可以实现差错控制和流量控制
5.会话层(Session Layer)
会话层管理不同主机之间的会话进程,或建立虚连接
6.表示层(Presentation Layer)
表示层对数据信息进行横变化已解决用户信息的语法表示问题,表示层的数据转换包括数据的加密,压缩,格式转换等.
7.应用层(Application Layer)
应用层是OSI参考模型中的最高层,为操作系统或网络应用程序提供访问网络服务的接口
16.1.2TCP/IP模型
TCP/IP是发展至今最成功的通信协议.该协议实际上是一个协议族,包括TCP协议,IP 协议,用户数据包协议,网间控制报协议,和地址解析协议
TCP/IP模型与OSI参考模型相比简化了一些层次,从下往上依次是.
1.网络接口层(Network Interface Layer)
网络接口层是TCP/IP模型的最底层,实际上TCP/IP模型并没有真正描述这一层的实现,因此具体的实现方法将随着网络类型而不同.
2.网际层(Internet Layer)
网际层是整个TCP/IP协议族的核心,其功能主要是消息寻址,并将数据分组发往目标网络或主机,常用的协议是IP(IPv4)协议,还包括UCMP ARP Internet组管理协议(IGMP)等协议.
3.传输层(Transport Layer)
传输层主要负责源主机到目标主机之间的端对端通信,在传输层定义了两种服务质量不同的协议,分别为TCP协议和UDP协议
4.应用层(Application Layer)
应用层是TCP/IP模型中的最高层,针对不同的网络应用提供了不同的协议,其中,有基于TCP协议的如文件传送协议(FTP),超文本传送协议(HTTP)简单邮件传送协议(SMTP),也有基于UDP协议的,如,域名服务(DNS)等.
16.1.3TCP/IP基本概念
TCP/IP协议族定义了一些基本的概念用于描述TCP/IP网络元素概念包括以下内容
IP地址,子网掩码,主机名,端口号.
16.2客户/服务器组件
Windows Sockets是广泛应用的,开放的,支持多种协议的网络编程接口,易语言核心库中的服务/客户组件简单对对其部分功能进行封装.本书以初级入门为基础,所以只对其做下简介如无法客户/服务组件满足你的需要可以使用网络通讯支持库等其他网络传送支持库.
16.2.1基于服务/客户组件的简单聊天工具
[例16-1]我们做一个简单的点对点聊天软件.
首先打开2分易语言一份用来写服务器一份用来做客户端.
做好界面后拖入服务组件,设置好监听端口
注意监听端口是大于0小于32767的任何自定数值,请勿超出范围.
在客户端使用客户组件然后写入连接代码,格式为
调用格式:〈逻辑型〉对象.连接(文本型服务器地址,整数型服务器端口号)-系统核心支持库->客户
英文名称:connect
连接到指定主机上的指定端口,该主机上的该端口必须已经被某一服务器组件监听。成功返回真,失败返回假。本命令为初级对象成员命令。
参数<1>的名称为“服务器地址”,类型为“文本型(text)”。可以为主机名、IP地址等。
参数<2>的名称为“服务器端口号”,类型为“整数型(int)”。该端口必须已经被服务器组件监听。
操作系统需求:Windows
下面至于要在数据到达客户进入客户离开连接断开等事件下写入相应代码即可详见16.1.e16.2.e