信息系统的开发与管理教程
中国人民大学 左美云
zuomy@ruc.edu.cn
第三章
一, 软件技术
软件的定义和特征
? 计算机软件是计算机程序加上该程序的各种
文档。
? 计算机软件的特征
– 软件是一种逻辑性系统元素。
– 软件具有开发成本高、复制成本低的特点。
– 软件, 磨损, 的绝对性和相对性。
? 尽管软件不会磨损,但它会退化。
– 软件维护复杂。
? 由于软件无备用元素可供替换,因而软件维护非常复
杂。
软件的种类
? 系统软件
– 操作系统
– 语言处理程序
– 服务性程序
– 数据库管理系统
– 网络通信管理程序
? 应用软件
– 实用程序
– 工具软件
软件技术发展过程
? 60年代高级语言阶段
– 20世纪 50年代末, FORTRAN的编译系统
– COBOL,LISP,PL/1和 ALGOL68等高级语言
– 此阶段, 编译技术代表了整个软件技术
? 70年代结构化程序设计阶段
–, 软件危机,
– 程序设计方法学
– 软件工程
? 80年代至今自动程序设计阶段
– 向集成化, 一体化方向发展 。
– CASE( computer aided software engineering)
– 4GL和面向对象程序设计方法, 如 C++
数据结构的基本概念与术语
? 数据
? 数据元素, 是数据的基本单位。记录、结点。
? 数据项:是数据的不可分割的最小单位。
? 数据对象:是具有相同性质的数据元素集合。
? 数据结构:即数据的组织形式
– 数据的逻辑结构
– 数据的存储结构
– 数据的运算
? 数据类型
– 基本数据类型 。 如整型、实型、布尔型
– 结构数据类型。如数组、结构体。
算法描述与算法分析
* 算法是由若干条指令组成的有穷序列。
* 算法可用自然语言、数学语言或约定的符号语言来
描述。
* 若一个算法用机器可执行的语言来书写,则它就是
一个程序。
* 所有算法均以函数或过程的形式表示,即:算法名
(参数表)
* 例,ins_sqlist(V,i,b)//在顺序表 V中第 i个数据元素之
前插入 b//
* 不同的算法应该比较
*, 正确,
* 时间复杂度
* 空间复杂度
线性表的定义
? 线性表 是 n(n≥ 0)个数据元素 ( 结点 ) a1,a2,…,an
组成的有限序列 。
? 例如 学生成绩表 ( 学号, 姓名, 各科成绩, 平均成
绩 )
? 其中数据元素的个数 n定义为表的长度 。
? n=0时称空表, 常常将非空的线性表 ( n>0) 记作
( a1,a2,…,an)
? 内部结点 ai(2≤i≤n -1)都有且仅有一个直接前趋
ai-1和一个直接后继 ai+1
? 线性表中结点之间的逻辑关系就是上述的邻接关系,
由于该关系是线性的, 因此线性表是一种线性结构 。
线性表的运算与存储
? 数据的运算是定义在逻辑结构上的, 而运算
的具体实现则是在存贮结构上进行的 。
? 对于线性表, 常见的基本运算有以下几种,
– 存取操作
– 插入操作
– 删除操作
– 查找操作
– 排序操作
? 线性表的存贮结构
– 顺序存储结构
– 链式存储结构
顺序存储结构示意图
? 存储结构的存储密
度大,存储空间利
用率高。
? 能够快速、随时访
问其中任意一元素。
? 对该表进行插入和
删除操作时,为保
证线性表的连续性,
则会引起大量元素
的移动。
? 存储容量不宜扩
充。
顺序表中的插入操作
顺序表中的删除操作
链式存储结构存储示意图
栈的定义与运算
? 栈是一种运算受限的线
性表,仅在表的一端进
行插入和删除运算。
? 允许插入和删除的一端
称为栈顶,另一端称为
栈底。
? 栈又称为“后进先出,
线性表 节 ( LIFO) 。
? 栈的基本运算有以下几
种,进栈、退栈、读栈、
判栈空、置空栈。
顺序栈和链栈
? 顺序栈用向量作为栈的存储
结构,它采用一块连续的存
储空间存放栈的数组元素。
? 顺序栈的插入、删除运算较
易实现。
? 当栈的最大容量事先无法估
计时,可用链表作为栈的存
储结构,称为链栈。
队列的定义与运算
? 队列是一种运算受限的线性表, 其只允许在
表的一端进行插入, 而在另一端进行删除 。
允许删除的一端称为队头, 允许插入的一端
称为队尾 。
? 队列又称为, 先进先出, 线性表 。
? 队列的基本运算有以下几种:入队, 出队,
置空队列, 读队首, 测队列是否为空 。
树的举例
? 树形结构是一类重要的非线性结构。树形结
构是结点之间有分支、层次关系的结构。
树的定义
? 树是 n(n>0)个结
点的有限集合 T,
它满足如下两个
条件,
– 有且仅有一个特
定的称为根的结
点;
– 其余结点可分为
m(m≧0) 个互不相
交的有限集合 T1,
T2,┅, TM,其中
每个集合又都是
一棵树,并称为
根的子树。
二叉树
? 二叉树是 n(n≧0) 个结点的有限集,它或者是
空集 (n=0),或者由一个根结点及两棵不相交
的分别称作这个根的左子树和右子树的二叉
树组成。
? 二叉树有五种类型,
排序
? 排序就是要整理文件中的记录, 使得它按关
键字递增 ( 或递减 ) 的次序排列起来 。
? 当待排序记录的关键字均不相同时, 则排序
结果唯一, 否则排序结果不唯一 。
? 内部排序与外部排序 。
? 内部排序可分为:插入排序, 交换排序, 选
择排序, 归并排序和分配排序 。
? 评价一个排序算法好坏的标准有以下几方面,
– 算法执行时所需要的时间。
– 执行算法所需要的附加空间。
– 算法的复杂程度。
插入 排序
? 插入排序是将待排序的记录按其关键字的大
小插入到前面已经排好序的文件中的适当位
置上, 直到全部插完为止 。
? 下面介绍两种典型的插入排序方法 。
– 直接插入排序
– 希尔排序
直接插入 排序
? 设原始文件的记录关键字为 45,33,14,88,
62,其排序过程如下,
直接插入 排序 方法
? 直接插入排序的方法是:先把原始文件的第
二个记录的关键字与第一个记录的关键字进
行比较,然后按照比较结果将第二个记录放
到相对第一个记录的合适位置上。
? 再取第三个记录的关键字与前两个关键字进
行比较,并把第三个记录插入到相对前两个
记录的合适位置上。
? 依此下去,直到最后一个记录,这样就完成
了排序。
希尔 排序
? 设原始文件的记录关键字为 52,41,45,85,
17,30。 增量依次取 3,1。 其排序过程如下,
希尔 排序 方法
? 希尔排序又称为缩小增量排序。
? 在对原始文件排序之前,先取定一个小于文
件中总记录个数 n的一个整数作为第一个增量
d1,将文件的记录分成 d1个组,所有距离为 d1
倍数的记录放在同一个组中,在各组中进行
直接插入排序;
? 然后再取第二个增量 d2< d1重复上述分组和
排序,直至增量为 1,即所有记录放在同一组
中进行直接插入排序为止。
交换 排序
? 交换排序是将文件中的待排序记录两两比较
其关键字, 若发现两个记录的次序相反即进
行交换, 直到没有反序的记录为止 。
? 下面介绍两种交换排序的方法 。
– 冒泡排序
– 快速排序
冒泡 排序
? 设原始文件的记录关键字为 57,34,22,94,
13,26。 其排序过程如下,
冒泡 排序 方法
? 冒泡排序是先将第一个记录的关键字与第二
个记录的关键字进行比较,若为逆序,则交
换位置,否则不动。接着第三个关键字与新
的第二个关键字进行比较,逆序则交换,否
则不变,直到使关键字最大的记录排在最后
一个记录位置上为止,第一次排序结束。
? 然后再对前 n-1个记录的关键字进行第二次排
序,直到没有记录需要交换为止。
? 整个过程就象, 冒气泡, 一样,重者在下,
轻者在上,因此称为冒泡排序。
快速 排序
? 设原始文件的记录关键字为 49,68,31,43,
56,18,65。 其排序过程如下,
快速 排序 方法
? 快速排序是内部排序中最快的一种。
? 它是在待排序记录中,任选一个记录,以该
记录为标准,将所有记录分成两组,第一组
中各记录的关键字都小于等于该关键字,第
二组中各记录的关键字都大于该关键字,并
把该记录排在两组之间。
? 然后重复上述方法,直到把所有的记录都有
序排列为止。
选择 排序
? 选择排序是每一趟从待排序的记录中选出关
键字最小的记录, 顺序放在已排好序的子文
件的最后, 直到全部记录排完 。
? 此处主要介绍直接选择排序。
直接选择 排序
? 设原始文件的记录关键字为 57,34,22,94,
13,26。 其排序过程如下,
直接选择 排序 方法
? 直接选择排序是一种比较简单的排序方法。
? 它是在待排序的记录中,选出关键字为最小
(大)的一个记录,将其排在表的最前面,
即作为表的第一个元素。
? 然后,余下的个记录在选出关键字最小(大)
的一个记录,将其放在表的第二项位置上。
? 依次下去,直到最后一个记录放在表中合适
的位置。
查找
? 查找也称检索,它是数据处理中经常使用的
一种重要运算。查找就是在数据结构中查找
满足某种条件的结点。通常是按照给出的关
键字值,在结构中查找等于该值的结点。
? 对于给定的线性表结构,一般可采用三种查
找方法,
– 顺序查找
– 二分查找
– 分块查找
顺序 查找 方法
? 顺序查找是最简单的查找方法。
? 它是用待查的关键字值与线性表里各结点的
关键字值,从表头开始逐个比较,找到相等
的结点时,则查找成功;找不到相等的结点,
则查找失败。
? 顺序查找方法适用于顺序存储结构,也适用
于链式存储结构。
? 该算法的优点是算法简单,查找前对结点没
有排序要求。
? 其缺点是查找时间长,查找效率低。
二分 查找
? 设有序线性表中各记录的关键字为,{7,11,18,
22,37,45,58}。 若要查找的关键字为 k=37的记
录, 其查找过程如下,
二分 查找 方法
? 二分查找又称折半查找,它是一种效率较高
的查找方法。
? 二分查找适用于顺序存储的有序表(按关键
字大小顺序排列的线性表)。
? 它是先取表的中间位置的结点关键字与给定
值比较,若相等,则查找成功;若给定值比
该记录的关键字值大(或小),就再在表的
后(或前)半部分进行二分查找。
? 这样,依次反复进行,直到找到为止,或当
前的查找区间为空(表示查找失败)。
分块 查找
? 若要查找的关键字为 k=45的记录,
分块 查找 方法
? 二分查找适用于“块有序表”(第 i块中关键
字的最大值小于第 i+1块中关键字的最小值,
并且大于第 i-1块中关键字的最大值) 。
? 其方法为:首先查找索引表(有序表),可
用顺序查找或二分查找,以确定待查的结点
在哪一块;然后在已确定的那一块中进行顺
序查找。
? 由于分块查找实际上是两次查找过程,所以
算法的平均查找长度是两次查找的平均查找
长度之和。
? 分块查找不一定要将线性表分成大小相等的
块。
分块 查找 方法
? 分块查找又称索引查找,是一种性能介于顺
序查找和二分查找之间的查找方法。
? 其方法为:首先查找索引表(有序表),可
用顺序查找或二分查找,以确定待查的结点
在哪一块;然后在已确定的那一块中进行顺
序查找。
? 由于分块查找实际上是两次查找过程,所以
算法的平均查找长度是两次查找的平均查找
长度之和。
? 分块查找不一定要将线性表分成大小相等的
块。
操作系统
? 操作系统是用来管理和控制计算机系统的软
件和硬件资源, 使系统各部分协调一致地工
作, 以方便用户使用并提高系统资源利用率
的一组软件程序 。
? 操作系统的功能也具有四大功能:处理机管
理功能, 存储管理功能, 外部设备管理功能,
文件管理功能 。
? 通常按照操作系统的使用环境, 可将其分为
三大类:多道批处理系统, 分时系统和实时
系统 。
处理机管理
? 在多道程序系统中, 多个程序
同时执行, 需要对 CPU的时间
进行合理的分配 。
? 处理机管理也称为进程管理,
通过引入, 进程, 的概念使
CPU有条不紊地工作, 使资源
得到最充分的利用, 主要包括
处理中断事件和处理机调度 。
? 所谓进程, 是指程序的一次执
行 。 进程有三个基本状态:就
绪状态, 运行状态, 阻塞状态,
存储管理
? 内存是除 CPU以外的另一宝贵资源, 而计算机
的内存资源是有限的 。
? 存储管理主要解决多道程序在内存中的分配,
合理利用内存空间, 并通过内外存的联合管
理来扩大存储空间 。
? 其主要包括:内存的分配, 存储扩充, 存储
保护三个方面 。
设备管理
? 计算机支持多种设备, 该管理利用操作系统
提供的设备驱动程序, 实现对外部设备进行
有效管理 。
? 负责把外部设备合理地分配给进程, 消除各
设备忙闲不均的现象, 使之有效地工作 。
? 其主要功能体现在:分配和驱动外部设备,
利用中断, 通道, 缓冲技术, 提高外部设备
的使用效率 。
文件管理
? 文件管理是对各类文件进行有序的管理, 支
持对文件的存储, 检索和修改及文件保护,
方便用户安全地访问它们 。
? 其主要功能为:按名存取文件, 有效分配存
储空间, 文件的共享与保护, 用户通过命令
访问各种文件 。
多道批处理系统
? 多道批处理系统实质上是, 多道程序, 和, 批处理,
的结合 。
–, 任务, 或, 作业, 是指用户一次上机要求计算机系统
完成的工作的总称;
–, 多道程序, 是指在计算机内存中同时可以存放若干道
作业, 允许交替地由处理机运行;
–, 批处理, 是指用户与作业之间没有交互作用, 用户不
能直接控制作业的运行, 即一批经过合理组织的作业一
旦提交给计算机系统, 其执行将由计算机系统控制 。
? 多道批处理系统具有自动化程度高, 资源利用率高,
作业吞吐量大等优点, 多应用在大中型计算机系统
中 。 其缺点是交互性差 。
? 目前, IBM OS/360就是一个多道批处理系统 。
分时系统
? 分时系统是一种多用户操作系统, 它是将中
央处理机 ( CPU) 处理时间进行分割, 即把工
作时间分割成一个个时间片, 每个用户轮流
使用时间片 。
? 一台计算机为一组终端用户服务, 每个用户
通过终端控制程序的运行 。 由于时间片分割
得很小, 每个用户感觉不到时间上的差别,
如同自己在独占一台计算机一样 。
? 分时系统具有良好的人机交互性, 用户使用
方便 。 其主要应用于中小型系统 。 如,UNIX
系统 。
实时系统
? 实时系统是指要求系统及时响应外部事件的请求,
在规定的时间内完成对该事件的处理并控制所有实
时设备和实时任务协调一致的运行 。
? 实时系统包括实时过程控制和实时信息处理两种,
前者主要应用于工业生产的过程控制, 而后者主要
应用于信息处理系统如查询与订票系统 。
编译程序
? 在计算机上执行一个高级语言程序一般要分
为两步,
– 第一步, 用一个编译程序将高级语言翻译成机器
语言程序;
– 第二步, 运行所得的机器语言程序求得计算结果 。
? 编译程序就是将某一种语言 ( 源语言 ) 程序
翻译成另一种语言 ( 目标语言 ) 程序, 即进
行符号转换 。
编译程序的组成与结构
二, 数据库技术
数据库技术的基本概念
? 数据:通常是指用符号记录下来的、可以识
别的信息。
? 数据库 ( DB),是指按一定方式组织起来的
相互关联的数据集合 。
? 数据库管理系统 ( DBMS),是用户与操作系
统之间的一层数据管理软件 。
? 数据库系统 ( DBS),是采用了数据库技术的
计算机系统 。
? 数据库技术:是研究数据库的结构, 存储,
设计, 管理和使用的一门软件学科 。
数据描述
? 现实世界
– 主要是对原始数据进行分析和综合工作
? 信息世界
– 将现实世界在人脑中的反映, 用文字和符号表示
出来
? 机器世界
– 信息在机器世界中是以数据形式存储的
信息世界数据描述的基本术语
?实体:实体是指客观存在并相互区别的事物 。
?实体集:具有相同性质的同类实体的集合 。
?属性:实体具有许多特性, 每一个特性称为属性 。
?每个属性有一个取值范围, 即值域 。
?例如学生实体可由学号, 姓名, 性别, 出生年月, 系别等
属性组成 。
?键:唯一标识实体的属性集称为键 。
?例如学生实体的学号可作为学生实体的键 。
机器世界数据描述的基本术语
?字段:标记实体属性的命名单位称为字段
( 或数据项 ) 。 它是可命名的最小信息单位 。
?记录:字段的有序集合称为记录 ( 相当于前
面提到的数据元素 ) 。 一般用一个记录描述
一个实体 。。
?文件:同一类记录的汇集称为文件 。 文件是
描述实体集的 。 例如所有学生记录组成了一
个学生文件 。
?键:能唯一标识文件中每个记录的字段或字
段集, 称为文件的键 。
机器世界和信息世界的术语的
对应关系
一对一联系( 1,1)
一对 多 联系( 1,N)
多对 多 联系( M,N)
ER图的实例
层次模型 实例
网状模型的实例
关系模型的实例
面向对象模型的实例
数据库系统的模式结构
关系数据库的基本术语
?关系
?一个二维表就是一个, 关系,, 表中的每一行对
应一个元组, 相当于一个记录 。
?每列对应一个域, 称为属性 。
?关系可用下式描述:关系名 ( 属性, 属性, …,
属性 ) 。
?如:学生关系为:学生 ( 学号, 姓名, 年龄, 性
别, 系别 ) 。
?关键字
?关系模式
关系代数
? 并运算:记为 R∪S 。
? 交运算:记为 R∩S 。
? 差运算:记为 R—S。
? 笛卡儿积:记为 R× S。
? 投影运算:记为 π 属性名 ( 关系名 ) 。
? 选择运算:记为,σ F( 关系名 ) 。
? 连接运算
并运算
交运算
差运算
笛卡儿积
投影运算
选择运算
不符合第一范式的关系
符合第一范式的关系
不符合第二范式的关系
?分解为如下三个关系,
?学生关系:学生代码, 姓名, 性别;
?项目关系:项目代码, 项目名称;
?学生与项目关系:学生代码, 项目代码 。
不符合第三范式的关系
?分解为如下三个关系,
?产品关系:产品代码, 产品名, 供销商名;
?供销商关系:供销商名, 供销商地址 。
数据库语言
? 数据描述语言 DDL( Data Description Language)
– 一种用来定义或描述数据库逻辑结构的语言
? 数据操纵语言 DML( Data Manipulation Language)
– 对数据库进行检索, 存储, 修改, 删除 。
? 关系数据语言主要有两种使用形式,
– 自含系统
– 宿主系统 ( 可以嵌入其他主语言如 FORTRAN语言, COBOL
语言, C语言等 ) 。
? SQL的原文是 Structured Query Language,即结构
化查询语言 。
– SQL语言具有数据查询, 数据定义, 数据操纵及数据控制
等功能 。
– SQL提供自含式和宿主式两种使用方式, 其语言简单, 使
用方便 。
– 在 SQL中称关系为表 TABLE,属性为列 COL,元组为行 ROW。
数据定义:建立和撤销关系表
? 命令格式,CREATE TABLE 〈 表名 〉 ( 〈 列定义 〉
[,〈 列定义 〉 … ]) ;
– 其中列定义语法为,〈 列名 〉 〈 数据类型 〉 〈 空值指定 〉
? SQL>CREATE TABLE S( SNO NUMBER( 7) NOT NULL,
SN CHAR( 8), SA NUMBER( 3)) ;
? 命令格式,DROP TABLE 〈 表名 〉 ;
数据定义:建立和撤销视图
? 建立视图,
– 命令格式,CREATE VIEW〈 视图名 〉 AS SELECT
列名 1,…, 列名 n FROM〈 表名 〉 WHERE〈 条件 〉 ;
– SQL>CREATE VIEW STU-GRA AS SELECT
S.SNO,S.SN,C.CN,SC.GR FROM S,SC,C
WHERE S.SNO=SC.SNO AND SC.CNO=C.CNO;
? 撤消视图,
– 命令格式,DROP VIEW 〈 视图名 〉 ;
– SQL>DROP VIEW STU-GRA;
数据查询
?查询列
?命令格式,SELECT 〈 列名 1,列名 2,…, 列名
n〉 FROM 〈 表名 〉 ;
?例如, SELECT SNO,SN FROM S;
?查询行
?命令格式,SELECT * FROM〈 表名 〉 WHERE 〈 条
件 〉 ;
?例如, SQL>SELECT * FROM SC WHERE GR=90;
?排序
?命令格式,SELECT〈 列名 1,…, 列名 n〉 FROM
〈 表名 〉 ORDER BY〈 关键字 〉 [DESC]
?例如, SQL>SELECT SNO, CN, GR FROM SC
ORDER BY SNO;
数据操纵 ?插入
?命令格式,INSERT INTO 〈 表名 〉 ( 列名 1,…,列名 n) VALUES( 列名 1值, …, 列名 n值 ) ;
?例如 SQL> INSERT INTO S ( SNO,SN,SA)VALUES ( 9721234,,李卿,, 22) ;
?更新
?命令格式,UPDATE 〈 表名 〉 SET 〈 列名 〉 =更新数据 WHERE 〈 条件 〉 ;
?例如, SQL>UPDATE C SET CN=,离散数学,WHERE CNO=31;
?删除
?命令格式,DELETE FROM〈 表名 〉 [WHERE〈 条件 〉 ];
?例如, SQL>DELETE FROM S WHERE SNO=9721223;
数据控制
?授权
?命令格式,GRANT 〈 授权内容 〉 ON 〈 表名 〉
TO 〈 用户名 〉 ;
?例如 SQL> GRANT INSERT,SELECT,UPDATE
ON S TO LILI;
?撤消授权
?命令格式,REVOKE 〈 授权内容 〉 ON 〈 表名 〉
FROM 〈 用户名 〉 ;
?例如, SQL>REVOKE UPDATE ON S FROM
LILI;
数据库的新发展
? 数据库技术也产生了许多新的分支 。 如,
– 分布式数据库
– 空间数据库
– 统计数据库
– 多媒体数据库
– 主动数据库
– 并行数据库
– 工作流数据库
– 对象 —关系数据库等等
三, 计算机与网络技术
计算机发展概况
? 第一代 ( 1947年 —1957年 ),电子管时代
? 第二代 ( 1958年 —1964年 ),晶体管时代
? 第三代 ( 1965年 —1970年 ),集成电路时代
? 第四代 ( 1970年至今 ),大规模集成电路时

? 第五代:从 80年代开始研制以知识库为基础,
能够进行逻辑推理, 判断, 决策的智能计算
机, 该时代又称为智能计算机时代 。
计算机 系统组成
? 运算器
? 存储器
? 控制器
? 输入设备
? 输出设备
网络的分类
? 局域网 LAN( Local Area Network),将有限范
围内 (一个学校, 一幢大楼或一个单位 )的各种计算
机, 终端和外围设备互联而成的网络 。
? 城域网 MAN( Metropolitan Area Network),覆
盖几十公里范围内的企业, 单位的多个局域网互联
而成的网络 。 它是介于局域网和广域网之间的一种
高速网络 。
? 广域网 WAN( Wide Area Network),又称为远程
网 。 它覆盖几十公里到几千公里的范围, 即覆盖一
个国家, 地区, 或几个洲的国际性远程网 。
计算机网络结构图
网络的分类
? 资源子网
– 由主计算机系统, 终端, 终端控制器, 联网外设, 各种
软件组成 。
? 通信子网
– 由网络通信控制处理机, 通信线路与其他通信设备组成,
完成全网数据传输, 转发等功能 。
? 通信控制处理机 CCP (Communication Control
Processor)又称前端处理机或节点处理机
– 一般由小型机或微型机配置通信控制硬件和软件组成 。
– 通信控制处理机在网络拓扑中被称为网络结点 。 其功能
是,
? 网络接口:实现资源子网和通信子网的接口协议, 接
收 /发送用户信息 。
? 存储 /转发:实现对报文分组的接收 /校验 /存储 /转发
? 网络控制:对进网信息提供路径选择, 网络流量控制
等功能 。
计算机网络拓扑结构
? 计算机网络的拓扑结构是通过网中结点与通信线路
之间的几何关系表示网络结构, 反映出网络中各实
体间的结构关系 。
? 网络拓扑结构主要有六种类型,
– 星型拓扑
– 环型拓扑
– 树型拓扑
– 网状型拓扑
– 总线型
– 卫星通信网
计算机网络拓扑结构图( 1)
计算机网络拓扑结构图( 2)
网络协议( Protocol)
? 语法:规定了用户数据与控制信息的结构与
格式;
? 语义:规定了用户控制信息的意义, 以及完
成的控制动作与响应;
? 时序:是对事件实现顺序的详细说明 。
? 对于结构复杂的网络协议, 最好的组织方式
是层次结构模型 。 计算机网络协议就是按照
层次结构模型来组织的 。
? 网络层次结构模型与各层协议的集合共同构
成 网 络 的 体 系 结 构 ( Network
Architecture) 。
开放系统互联参考模型
? OSI/RM ( Open System
Interconnection/Reference Model) 是由国际标
准化组织 ISO和国际电报电话咨询委员会 CCITT共同
制定的 。
? 将网络整个通信功能划分为七个层次,
– 物理层
– 数据链路层
– 网络层
– 传输层
– 会话层
– 表示层
– 应用层
OSI参考模型结构图
TCP/IP参考模型结构图
TCP/IP参考模型应用层协议
? 应用层向用户提供一组常用的应用程序, 相当于
OSI的高三层 。
– 网络终端协议 TELNET:用于实现互联网中远程登录;
– 文件传输协议 FTP:用于实现互联网中交互式文件传输功
能;
– 电子邮件协议 SMTP:用于实现互联网中电子邮件传送功
能;
– 域名服务 DNS:用于实现网络设备名字到 IP地址映射的网
络服务;
– 路由信息协议 RIP:用于网络设备之间交换信息;
– 网络文件系统 NFS:用于网络中不同主机间的文件共享;
– 超文本传输协议 HTTP:用于 WWW服务 。
TCP/IP参考模型其他层协议
? 传输层提供应用程序之间的通信, 相当于
OSI的传输层 。 这一层的主要协议是传输控
制协议 TCP ( Transport Control
Protocol) 。
? 互联网层负责发送分组, 相当于 OSI的网络
层 。 这一层的主要协议是 IP( Internet
Protocol) 协议 。
? 网络接口层:网络接口层负责网络发送和接
收 IP数据报 。 TCP/IP参考模型允许主机连入
网络时使用多种现成的和流行的协议, 如局
域网协议或其它协议 。
典型企业 Intranet的组成
? 浏览器:是让所有使用统一界面来访问各种
Internet资源, 并与之相互作用 。
? Web服务器:服务器上不仅有 WWW信息, 还可能有
企业数据库等, 它可以支持几种不同业务 。
? 域名服务器:是将 Internet网点的名称映射为 IP
地址 。
? 代理服务器:是从 Internet传输企业信息到企业
外部的唯一出口, 为管理内部网络和实现内外隔
绝提供了保险措施 。
? 防火墙:由硬件和软件网关构成, 通过限制外界
接入内部系统而保护企业内部信息 。
数据通信基础
? 模拟信号与数字信号方式 。
? 基带信号, 宽带信号 。 基带传输和宽带传输
? 通信的双方信息交互的方式,
– 单工通信:只能沿一个方向的通信而没有反方
向的交互 。
– 半双工通信:通信双方都可以发送 ( 接收 ) 信
息, 但不能同时双向发送 。
– 全双工通信:通信双方可同时发送和接收信息 。
全双工通信效率最高 。
多路复用技术
? 频分多路复用 ( FDM)
? 波分多路复用 ( WDM)
? 时分多路复用 ( TDM)
? 码分多路复用 ( CDMA)
数据通信系统的主要技术指标
? 数据传输速率 。 它有两种度量单位,
– 波特率:是指数据通信系统中, 每秒传送的波形个数 。
其单位是, 波特, ( band) 。
– 比特率:数据传输速率是指数据通信系统中, 每秒传
送的二进制位数 。 其单位是每秒比特, 以 bps表示 。
? 误码率 。 计算机网络通信系统中, 要求误码率
低于 10-9。
? 信道容量 。 用单位时间内最大可传送的比特数
表示 。 它取决于信道频带, 可使用时间及信噪
比 。
传输介质 的性能比较