66
第8第 第第第第第第第 8 1 第第 8 2 第第第第第 第第第 8 3 第第第第第 8 4 TCP/IP 第第 8 5 第第第第第第 8 6 WWW 第第 第第 8

第8章 计算机网络基础

Embed Size (px)

DESCRIPTION

第8章 计算机网络基础. 8.1 概述 8.2 计算机网络体系结构 8.3 局域网技术 8.4 TCP/IP 协议 8.5 网络互联技术 8.6 WWW 协议 习题8. 8.4 TCP/IP 协议 TCP/IP(Transmission Control Protocol/Internet Protocol, 传输控制协议/互联网络协议)是 Internet 上使用的网络协议。 8.4 . 1 TCP/IP 分 层 - PowerPoint PPT Presentation

Citation preview

Page 1: 第8章  计算机网络基础

第 8 章 计算机网络基础

8 . 1 概述8. 2 计算机网络体系结构8. 3 局域网技术8. 4 TCP/IP 协议8. 5 网络互联技术8. 6 WWW 协议习题 8

Page 2: 第8章  计算机网络基础

8 . 4 TCP/IP 协议 TCP/IP(Transmission Control Protocol/Internet

Protocol ,传输控制协议 / 互联网络协议 ) 是 Internet上使用的网络协议。

8 . 4 . 1 TCP/IP 分层 Internet 网络体系结构以 TCP/IP 协议为核心。

其中 IP 协议用于为各种不同的通信子网或局域网提供统一的互联平台, TCP 协议则用于为应用程序提供端到端的控制和通信功能。

Page 3: 第8章  计算机网络基础

1.TCP/IP 协议层次和协议集由于 TCP/IP 协议开发先于 OSI 参考模型,故不

完 全 和 OSI 参 考 模 型 对 应 。 从 体 系 结 构 上 来看, TCP/IP 基本上是 OSI7 层模型的简化,它只分为4 层:网络接口层、网络层、传输层和应用层。

Page 4: 第8章  计算机网络基础

1 )网络接口层 (SubNetwork Layer)

TCP/IP 协议的网络接口层与 OSI 协议的物理层、数据链路层以及网络层的一部分相对应。该层没有规定新的物理层和数据链路层协议,允许通信子网采用已有的或将来的各种协议,例如以太网的 802.3 协议,分组交换网的 X..25 协议等。该层只定义了 TCP/IP 与各种通信子网之间的网络接口。网络接口层的功能是传输经网络层处理过的消息。

Page 5: 第8章  计算机网络基础

2 )网络层 (Internet Layer)

该层与 OSI 网络层相对应,由于它是针对网际环境设计的,具有更强的网际通信能力。网络层协议为 IP 协议。它将传输层送来的消息组装成 IP 数据包,并且把 IP 数据包传递给网络接口层。 IP 提供端到端的分组发送功能,提供标识网络号及主机结点地址的功能,为使 IP 数据包长度与通信子网允许的数据包的长度匹配,还提供了数据分段和重新组装的功能。

该层还支持建立独立的局域网之间的互联网络。在互联网络中,连接独个网络的结点称为路由器,其允许网间的报文根据目的地址,通过路由器传送到另一个网络。

Page 6: 第8章  计算机网络基础

3 )传输层 (Transport Layer)

该层与 OSI 传输层相对应,为应用程序提供端到端通信功能。传输层有 3 个主要协议,分别为传输控制协议 TCP 、用户数据报协议 UDP 和互联网控制消息协议 ICMP 。

TCP 协议负责将用户数据按规定长度组成数据包发送,在接收端对数据包按顺序进行分解重组以恢复用户数据。 TCP 协议是以建立高可靠性信息传输为目的的,为了可靠传输数据,该协议具有数据包的顺序控制、差错检测、检验以及再发送控制等功能。

Page 7: 第8章  计算机网络基础

UDP 协议是对 IP 协议集的扩充,使指定主机可识别多个接受者,因为每个 UDP 报文除数据外,还包含报文的源和目的协议端口号,支持两个用户进程间传送数据报。

ICMP 协议负责当数据包传输有误时,发送出错信息给数据包发送端主机,另外还具有控制数据包流量的功能。

Page 8: 第8章  计算机网络基础

4) 应用层 (Application Layer)

该层包含了 OSI 会话层、表示层和应用层的功能,为用户提供各类服务。例如,远程登陆、文件传输、电子邮件和 Web 服务器等。

TCP/IP 协议集与 OSI 各层次对应关系如图 8.8所示。

5~7 层4 层3 层

1 ~ 2 层

应用层传输层网络层

网络接口层

SMTP FTPDNS RPC SNMPTCP UDPIP(ICMP,ARP,RARP)

Ethernet Token-Ring 100BASE-T Others

OSI 层次 TCP/IP 层次 TCP/IP 协议集

图 8.8 TCP/IP 协议集及分层结构

Page 9: 第8章  计算机网络基础

2. TCP / IP分层工作原理 1 ) TCP / IP 分层

TCP / IP 的分层工作原理如图 8.9 所示。其中说明了两台主机上的应用程序之间传输报文的路径。主机 B 上的第 n 层接收到的正是主机 A 上的第 n 层发送出来的报文。

Page 10: 第8章  计算机网络基础

应用层

传输层

网络接口层

网络层

应用层

网络层

传输层

网络接口层

物理网络

主机 A 主机 B

相同报文

相同分组

相同数据报

相同帧

图 8.9 TCP/IP 分层工作原理

Page 11: 第8章  计算机网络基础

2 ) TCP/IP 模型的分界线TCP/IP 协议的概念性层次包含两个重要的划分,

一个是协议地址的分界线,以区分不同的寻址,另一个是操作系统的分界线,以区分系统程序与应用程序。

网络接口层处理物理地址,该层协议已集成到操作系统中,属于系统软件。网络层与传输层处理 IP 地址,这两层协议也已集成到操作系统中,属于系统软件。应用层协议未集成到操作系统中,属于非系统软件。

Page 12: 第8章  计算机网络基础

3 )网络协议与操作系统的关系 计算机体系结构中的低层部分,即物理层和数据

链路层协议,是和通信设备等硬件密切相关的,需要由网络接口卡和网络互联设备来实现。计算机体系结构中的高层部分,网络层协议和传输层协议,由计算机主机操作系统来实现,作为核心线程方式运行。网络层与数据链路层协议的接口以及服务调用,是通过操作系统中网卡驱动程序来实现的。处于 TCP 之上的应用层协议大部分使用 TCP/IP 协议提供的系统调用,它们处于用户程序的地位,以用户线程方式执行。

Page 13: 第8章  计算机网络基础

8 . 4 . 2 IP 协议 IP 协议为网络层协议,其中包括基本传输单元,

也就是 IP 报文的类型与定义, IP 报文的地址以及分配方法, IP 报文的路由转发以及 IP 报文的分段与重组。

IP 协议仅具有有限的报错功能,数据包在传输过程中的差错检测和恢复都由传输层协议 TCP 来完成。

Page 14: 第8章  计算机网络基础

1. IP 数据报 IP 数据报包括报文头和正文部分,其格式如图 8.

10 所示,以及说明见表 8.1 。

版本 报头长度 服务级别 报文长度标识 标志 分段偏移

生存时间 用户协议 报头检验和源 IP 地址

目的 IP 地址选项

数据…

填充

4 4 8 16 19 24 31

图 8.10 IP 协议数据报格式

Page 15: 第8章  计算机网络基础

表 8.1 IP 数据报格式说明

名字 位数 说明

版本号IP 报头长度服务级别报文长度标识标志分段偏移生存时间用户协议号报头检验和源 IP 地址目的 IP 地址任选项填充

448

16163

1388

166464

可变可变

协议版本号IP 数据报的报头长度( 32 位)规定优先级、传送速率、吞吐量和可靠性等参量报关和数据两部分总长度 ( 字节 ) 数据报标识,便于数据报分段与重装 数据报是否分段标志 以 64 位为单位表示的分段偏移允许数据报在网间传输的存活时间 指出发送数据报的上层协议 只用于报头检查 数据报的源主机 IP 地址 数据报的旧的主机 IP 地址 规定附加服务,如时间戳、错误报告及特殊路由等 保证 IP 报头以 32 位为边界对齐

Page 16: 第8章  计算机网络基础

2. 数据报分段与重装 在各种物理网络中,数据帧的长度可以不一样,

在互联网络中, IP 协议首先要根据物理网络所允许的最大发送长度对上层协议提交的数据报进行长度检查,需要时把数据报分成若干个段发送,对数据报分段后,形成多个 IP 数据报,为了说明上层协议提交的数据报和 IP 数据报的关系,分段 IP 数据报需设置相同的标识。每一个分段的 IP 数据报要重新计算其报文长度,并且要表明该 IP 数据报在原始数据报中的位置。

Page 17: 第8章  计算机网络基础

在互联网络中,分段的数据报可以独立传输。经路由器转发时,由于路由可能不同,导致目标主机接收到的 IP 数据报顺序与发送时的顺序不一致,因此必须根据 IP 数据报中的相关字段 ( 标识、长度、偏移及标志等 ) 将分段的数据报重新组装;以恢复为原始 IP数据报 (保留第一段 IP 数据报头 ) ,根据用户协议号提交给上层协议。

Page 18: 第8章  计算机网络基础

3. IP 地址 IP 地址是 IP 协议的核心, IP 地址格式如图 8.1

1 所示。 0 网络地址 主机地址

1 0

1 1 0

1 1 1 0

1 1 1 1 0

网络地址 主机地址

网络地址 主机地址

组播地址

保留

0 7 8 15 16 23 24 31A 类地址

B 类地址

C 类地址

D 类地址

E 类地址

图 8.11 IP 地址格式

Page 19: 第8章  计算机网络基础

A 类地址中网络地址 126 个 (1 个字节 ) ,主机地址 16 387 064 个 (3 个字节 ) ,其范围为 0.0.0.0~127.255.255.255 。 A 类地址用于大型网络,由国际网络中心来分配。

B 类地址中网络地址 16 256 个 (2 个字书 ) ,主机地址 64 576 个 (2 个字节 ) ,其范围为 128.0.0.0~191.255.255.255 。 B 类地址用于各地区的网管中心,由欧州、北美和亚太三大区网络信息中心负责分配。

C 类地址中网络地址 2 064 512 个 (3 个字节 ) ,主机地址 254 个 (1 个字节 ) ,其范围为 192.0.0.0~223.255.255.255 。 C 类地址用于校园网或企业网。由国家或地区网络信息中心负责分配。

D 类地址为组播地址, E 类地址保留。

Page 20: 第8章  计算机网络基础

4. 子网和 IP 地址屏蔽码 由于 Internet 发展迅速,网络地址成为宝贵资源。

为了提高 IP 地址的利用率,将大型网络划分为若干个逻辑上相互独立的子网,但网络地址不变,原主机地址成为子网 / 主机地址。

IP 地址屏蔽码是和 IP 地址配合使用的,用于说明一个大型网络所具有的子网部分,以及每个子网所包含的主机部分,屏蔽码是对地址分类的扩展。

Page 21: 第8章  计算机网络基础

IP 协议为每个网络接口分配一个 IP 地址,在有子网的 IP 地址中,其子网号是通过主机号字段的高几位二进制位来表示的,所占位数与子网部分对应。如果把该接口的 IP 地址和其屏蔽码进行逻辑与运算,屏蔽码将 IP 地址中主机字段的主机号屏蔽掉,即可得到该接口所在网络的子网号。以 C 类地址为例,例如,屏蔽码 255.255.255.192(11000000B) 表示有 4 个子网号,每个子网可以有 64 台主机,设 IP 地趾为

202.117.80.1 主机号为 00000001

202.117.80.3 主机号为 00000011

202.117.80.130 主机号为 10000010

将上述 IP 地址与屏蔽码进行逻辑与运算,可看出前两个 IP 地址的子网号为 0 号,属于同一网段,而第三个 IP 地址的子网号为 2 号,不属于同一网段。

Page 22: 第8章  计算机网络基础

5. 路由选择 在互联网络中,每个主机和路由器 (TCP/IP 中

称为网关 )都保存有一个路由选择表,其基本格式参见图 8.12 。

其中路由器地址指向 IP 数据报应送往的下一个路由器。忙闲度采用这个路由器发送数据的数量来衡量。当一个目的地址有多个路由时, IP 协议总是选择忙闲度最小的路由。

目的地址 忙闲度路由器地址

图 8.12 路由选择表基本格式

Page 23: 第8章  计算机网络基础

6. ICMP 、 ARP 和 RARP 协议 互 联 网 控 制 报 文 协 议 (Internetwork Control

Message Protocol , ICMP) 为差错和控制报文协议,用于传输错误报告和控制信息。由于 IP 协议提供无连接的数据报传送服务,须由 ICMP 提供这类差错报告的传输服务。

地 址 解 析 协 议 (Address Resolution Protocol , ARP) 提供 IP 地址到物理地址的映射服务。

逆向地 址 解析协 议 (Reverse Address Resolution Protocol , RARP) 提供从物理地址到 IP 地址的映射服务。

Page 24: 第8章  计算机网络基础

8 . 4 . 3 TCP 协议 TCP 为传输层协议,提供可靠的进程间通信机

制,可以自动纠正各种差错。 TCP 支持许多高层协议 (Upper Level Protocol , ULP) ,它提供一对 ULP 之间面向连接的传输服务,包括建立连接、数据传输和终止连接。 TCP 主要通过套接字 (Socket) 为 ULP 提供面向连接的传输服务。

Page 25: 第8章  计算机网络基础

1. 接口和套接字 传输层协议和应用程序之间的数据接口由运行在

主机上的 TCP 协议为其分配端口号。为了使其具有全局惟一性,将此端口号和 IP 地址合起来组成套接字。

使用 TCP 协议的网络应用程序分为服务程序和客户程序。服务程序为其他主机提供服务,服务程序使用固定的端口号,例如: Telnet 服务端口号为 23 ,FTP 为 21 号, E-mail 为 25 号。客户程序使用服务程序提供的服务,客户程序可选择通信端口号。服务程序运行后,将在各自端口等待,如果希望使用服务程序提供的服务,可向该服务对应的套接字发送消息。

Page 26: 第8章  计算机网络基础

2. TCP 报文格式 TCP 协议中的基本传输单元为段, TCP 报文又

称为 TCP 段。一个 TCP 段由段头和数据流两部分组成。其格式如图 8.13 所示,说明见表 8.2 。

数据偏移值 保留 URG ACK FST RSH SYN FIN 窗口大小确认号

序号源端口号 目的端口号

检验和 紧急数据指针选项 填充

TCP 数据

图 8.13 TCP 报文格式

Page 27: 第8章  计算机网络基础

表 8.2 TCP 报文格式说明报头字段名 位数 说明源端口号 目的端口号 序号 (SEQ) 确认号 (ACK) 数据偏移值 URG ACK PST RSH SYN FIN 窗口大小 校验和 紧急数据指针 选项 填充

161632324111111161616

可变可变

本地通信端口 远地通信端口 数据部分第一个字节的序列号 表示本地希望接收的下一个数据字节的序号 该 TCP 段中数据的起始位置 紧急数据指针有效标志,指示本段中包含紧急数据 确认标志,指示段中确认号有效 复位连接标志,指示本段为复位段 PUSH 操作标志 建立同步连接标志 本地数据发送结束,终止连接标志 本地接收窗口 ( 接收缓冲区 ) 大小 包括 TCP 报头和数据在内的校验和 指示从发送数据序列号开始到紧急数据之后的第一个字节偏移值 提供任选服务 保证 TCP 报头以 32 位为边界对齐

Page 28: 第8章  计算机网络基础

TCP 数据流是无结构的字节流,这一特征允许TCP 段长可变。两个使用 TCP 协议进行通信的对等实体间的通信,一般要经历建立连接、数据传输和终止连接 3 个阶段。 TCP 协议通过状态转换机制,可以保证可靠地执行各个阶段,为上层应用提供双向、可靠、顺序及无重复的数据流传输服务。

Page 29: 第8章  计算机网络基础

3. 建立连接 建立 TCP 连接,需要发送序列号和接收序列号,

初始序列号由 TCP 在创建连接时分配,建立连接实际上是双方序列号同步的过程。建立连接时,每一方都发送自己的初始序列号,并且接收对方发送的序列号作 为 接 收 序列号 , 通 过 " 三次握手 " 机 制 建 立 连接。 TCP 协议可以处理一方发起的连接请求或由双方同时发起的连接请求。正常连接建立过程如图 8.14 所示。同步标志 SYN 用于连接建立阶段。由发起方发送初始序列号为 X ,且 SYN 标志置位的段;由接收方回送初始序列为 Y 、 SYN置位、 ACK 标志置位且应答序列号为 X十 1( 表示希望接收的下一个数据字节的序列号 ) 的响应段;最后发起方发送以 ACK置位、应答序列号为 Y十 1 应答的段。连接至此建立。

Page 30: 第8章  计算机网络基础

A B A B

SYN ( SEQ = X )

SYN ( SEQ = Y ) , ACK = X + 1

SEQ = X + 1 , ACK = Y + 1 )

SYN ( SEQ = X )SYN ( SEQ = Y )

SYN ( SEQ = Y ) ,ACK=X+1

( SEQ = X,ACK=Y+1 )

(a) 三次握手 (b) 同时建立连接

图 8.14 TCP 协议连续建立过程

Page 31: 第8章  计算机网络基础

4. 关闭连接 连接的关闭由双方共同完成。关闭请求可以由一

方发起也可以由双方同时发起。请求关闭方向对方发送 FIN 段请求关闭连接,接收方必须使用 ACK 段给予确认。关闭过程也是一个三次握手过程。

5.UDP 协议 UDP 协议是对 IP 协议集的扩充,它提供了复用

功能,可以区分一台主机中多个不同应用。 UDP 提供无连接服务,通讯开销很小,效率较高,适用于简单的请求 /响应通信方式的应用,如 DNS 应用等。

Page 32: 第8章  计算机网络基础

8 . 5 网络互联技术 网络互联的目的是使一个网络上的用户能访问其

他网络上的资源,使不同网络上用户能互相通信和交换信息。网络互联主要指异构网络的互联,从拓扑结构 来 看 , 互 联 主 要 有 4 种形式,即 LAN -LAN 、 LAN - WAN 、 LAN - WAN - LAN 和WAN - WAN 。在网络互联时,一般需要通过某个中间设备实现连接,这个中间设备又称中继系统。

Page 33: 第8章  计算机网络基础

1 .互联的主要形式 ( 1 ) LAN - LAN 如图 8.15 所示, LAN - LAN 互联需要使用网桥、交换式集线器或路由器等。图 8.15中 B 表示网桥( bridge ),网桥可以实现协议转换和改变数据包封装。

BIEEE802.3 LAN IEEE802.5 LAN

图 8.15 LAN-LAN 互联

Page 34: 第8章  计算机网络基础

( 2 ) LAN - WAN - LAN 、 LAN - WAN ,如图 8.16 所示。图 8.16 中 R 表示路由器( Router )。路由器具有对网络中任何一个结点的寻址能力,其利用自身在网络中的惟一编址,在广域网中发送和接收信息报文。

RIEEE802.3 LAN IEEE802.3 LAN

图 8.16 LAN-WAN-LAN 互联

X.25 WAN R

RLAN-WAN-LAN WAN-LAN

Page 35: 第8章  计算机网络基础

( 3 ) WAN - WAN 如图 8.17 所示。图中网间连接器 G 为网关( Gateway ),实现WAN 之间的协议转换。

RIEEE802.3 LAN IEEE802.3 LAN

图 8.17 WAN-WAN 互联

X.25 WAN G

R

WAN-WAN

X.25 WAN R

Page 36: 第8章  计算机网络基础

2 .中继系统 根据 OSI 参考模型,从通信协议的角度来看,

网络互联分为四个层次的中继系统,分别是物理层、链路层、网络层和传输层等高层中继系统。

1) 物理层中继系统 物理层的互联要求所连接的子网必须具有相同的

数 据 传 输速率和 数 据 链 路 协 议 ,常采 用 中继器( Repeater )来连接各物理特性相同的局域网段,无物理或逻辑地址。

Page 37: 第8章  计算机网络基础

2) 数据链路层中继系统 用于连接同一逻辑网络中物理层规范不同的段。常

采用网桥、交换式集线器和交换机按帧接收或发送信息,互联多个同类的局域网段。网桥可以局域网之间帧的存储转发。网桥和交换机端口具有物理地址,无逻辑地址。 3) 网络层中继系统

网络层互联使用路由器,主要用于连接不同的逻辑网络。在广域网中, Internet 协议 (IP)现已成为该层的一种标准协议,支持异种网络的互联。路由器可用于局域网间、局域网与广域网间或广域网之间的互联,解决路由选择问题。网络中每个端口均有惟一的物理和逻辑地址。

Page 38: 第8章  计算机网络基础

4) 高层中继系统高层指网络层以上的层次,网络高层互联是指传

输层以及传输层以上的互联,一般使用网关( Gateway )来实现,作为协议转换器,网关实现互联网上使用不同协议的应用程序之间的数据通信。

Page 39: 第8章  计算机网络基础

8 . 6 WWW技术 WWW ( World Wide Web )是基于超媒体的、

方便用户在 Internet 上检索和浏览信息的一种广域信息发现技术和信息查询的工具。整个系统由 Web 服务器、浏览器和通信协议三部分组成。 WWW 采用分布式的信息资源,统一的用户界面,支持各种信息资源和各种媒体的演播,为各种组织机构提供信息发布环境。

WWW 应用的最大特色在于为用户提供良好的信息查询界面。 Web 把各种形式的信息,如文本、图像、声音、视频等无缝隙地集成在一起,用户只需要提出自己的查询要求,具体到什么地方,如何取回信息都由 WWW自动完成。

Page 40: 第8章  计算机网络基础

WWW 中的文档是通过超文本标记语言( hypertext markup language , HTML )来描述的,通常以 html 为文件扩展名。 HTML语言描述了文件的结构和超文本连接信息。通用资源访问定位( URL )描述了在超文本连接激活时所访问文档的地址。 HTML利用 URL 地址实现了文档在互联网主机中的定位。

Page 41: 第8章  计算机网络基础

8 . 6 . 1 浏览器 /服务器 浏览器为客户机提供了基于 HTTP超文本传输

等协议的用户界面,服务器可以为客户机提供基于相同协议的服务。 Internet 信息服务器包括Web 、 FTP 、 NNTP 和 SMTP 等服务。在互联网的应用中,浏览器端所有页面都处于一种非连接状态,当服务器收到浏览器提出的服务请求时,建立服务器与客户机的连接,调用相应的 ASP 、 JSP 或者 PHP等服务器端应用程序,该程序按照请求者的要求作出响应后,再把结果以纯 HTML页面传送到浏览器端。

Page 42: 第8章  计算机网络基础

如果需要从数据库中提取数据,则发出数据库操作请求,并将结果以纯 HTML页面返回到浏览器端,然后关闭与数据库的连接,随后再关闭客户机与服务器的连接,使服务器再次处于等待请求状态。这种客户 /服务器模式称为浏览器 / 服务器 (Browser/Server ,简称 B/S) 模式。浏览器 / 服务器模式适合在 Internet 中发布消息。

浏览器和服务器采用 HTTP 等协议建立连接,使得客户与服务器两者的超媒体传输变得很容易。所有的客户及服务器统一使用 TCP/IP ,统一分配 IP ,使得客户和服务器的逻辑连接变成简单的点对点连接。

Page 43: 第8章  计算机网络基础

浏览器 / 服务器模式支持脚本( Script )的阅读、解释和运行。例如 Java Script 和 VB Script ,如图 8.18 所示。客户端脚本在浏览器中运行,通常对客户的操作做出实时的反应,如输入验证等;服务器端脚本在服务器中运行,通常执行数据库查询等,服务器端处理与访问后端各种数据源的常用技术有 ASP (Active Server Page) 、 JSP ( Java Server Pages )、 PHP ( Hypertext Preprocessor )等。服务器端脚本技术和客户端脚本技术结合,可以创建和运行动态、交互的 Web 服务器应用程序。

Page 44: 第8章  计算机网络基础

当客户端执行一个包含脚本程序的 HTML 文件,并向服务器端发出请求时,将参数传到服务器端。每个 WWW站点都有一个服务器进程来监听 TCP80 端口,以确定是否有从客户端(浏览器)发出的连接请求。接到客户文档请求后,执行一个服务器端脚本,服务器端脚本负责调用相应的处理程序,将脚本执行后的结果作为普通的 HTML页面传到浏览器。在连接建立后,每当客户机发出一个请求,服务器就发回一个应答,然后释放连接。

服务器 浏览器提出请求

送出网页在服务器端执行Server Side Script

在浏览器端执行Browser Side Script

图 8.18 脚本技术

Page 45: 第8章  计算机网络基础

一个标准的 WWW请求过程如下:( 1 )用户在浏览器端向服务器发出一个请求 ;

( 2 )服务器将用户的请求传递给 ASP 、 JSP 或者PHP 程序 ;

( 3 ) ASP 、 JSP 或者 PHP 程序根据用户的请求对数据库进行操作 (也可以通过组件来实现对数据库的访问 );

( 4 ) ASP 或者 JSP 程序把操作的结果用页面的方式传送到服务器 ;

( 5 )服务器把生成的纯静态页面送回浏览器。

Page 46: 第8章  计算机网络基础

8 . 6 . 2 超文本传输协议 超文本传输协议 (Hypenext Transfer

Protocol , HTTP) 是专门为 Web 设计的一种网络协议,在 TCP / IP 体系结构中属于应用层协议,它定义了 Web 的通信交换机制、请求及响应消息的格式等。

浏览器和服务器通过 HTTP 通过 HTTP 交换Web 文档时,可以交换不同的文档类型,文档类型的格式由多用途 Internet 邮件扩展( Multipurpose Internet mail extensions , MIME )定义, MIME 是专门描述在 Internet 上传输多媒体数据的技术标准。

Page 47: 第8章  计算机网络基础

1 . HTTP 工作过程 首先,客户端根据某资源的 URL 向 Web 服务

器 r提出请求, Web 服务器的 HTTP Daemon( 守护进程 )将此请求的参数通过标准输入和环境变量传递给指定的处理程序,并启动此应用程序进行处理,处理结果通过标准输出返回给 HTTP Daemon 进程,再由 HTTP Daemon 进程返回给客户端,由浏览器负责解释执行,将最终结果显示在用户面前。图 8.19描述了 HTTP 工作过程。

Page 48: 第8章  计算机网络基础

浏览器程序 Web 服务器执行脚本

网页URL : www.npu.edu

客户机 服务器超链接

HTML 文档

图 8.19 HTTP 工作过程

Page 49: 第8章  计算机网络基础

假如用户点击一个指向 http : //www.npu.edu / hypertext /Index.html 的超链接,浏览器和服务器之间的工作过程如下:( 1 )用户在浏览器中指定链接页面的 URL 。( 2 ) 浏 览 器 通 过 域 名 服 务 器 DNS 查 询

www.npu.edu 的 IP 地址。(3) DNS 应答 IP 地址为 202.117.94.1 。( 4 )浏览器和 202.117.94.1 的 80 端口建立一条

TCP 连接。(5)浏览器发送 GET / hypertext/ Index.html命令。( 6) www.npu.edu 服务器发送 Index.html 文

件。(7)释放 TCP 连接。( 8 )浏览器显示 Index..html 的全部文本以及图像。

Page 50: 第8章  计算机网络基础

2 . HTTP

标准的 Web 传输协议是超文本传输协议( HTTP )。 HTTP 协议是一种根据明确性和速度要求,为建立分布式协作超媒体信息系统而设计的协议,它是一种简单的、无状态的以及面向对象的协议,可用于多种任务,如名字服务器和分布式对象管理。

Page 51: 第8章  计算机网络基础

HTTP 协议支持浏览器和服务器的数据类型协议, HTTP 协议由两个基本项组成:从浏览器到Web 服务器的请求集和从 Web 服务器到浏览器的应答集。 HTTP 协议通信时,浏览器和 Web 服务器的每次连接包括一个 ACSII码请求,后跟一个MIME 应答。在文档请求时打开连接,文档传送后关闭连接。 HTTP 不仅能传输超文本,也可以传输各种类型的对象,当浏览器向服务器请求数据时,浏览器要向服务器传送其所支持的 MIME 类型表,服务器可以根据类型表向浏览器传送其所支持的类型文件。服务器响应时传送的内容包括MIME 类型以及数据文件。浏览器使用 MIME 类型信息来解释和显示数据文件。

Page 52: 第8章  计算机网络基础

HTTP 支持两种请求:简单请求和完全请求。 简单请求由 GET命令行构成,请求读所需的一个页面;相 应 的 应答为 原始的页面, 不 包括头部 和MIME 类型。

完全请求包括协议,由多行组成。第一行包含 GET命令,请求所需的页面以及协议/版本,后续行包括头部。最后是一个空行标识请求结束。内置的 HTTP请求命令如表 8.3所示。

Page 53: 第8章  计算机网络基础

表 8.3 内置的 HTTP请求命令

命令 描述

GETHEADPUTPOSTDELETELINKUNLINK

请求读 Web 一个页面 请求读 Web 网页的头 请求存储 Web 一个页面 附加到命名资源(如 Web 网页) 删除 Web 页面 连接两个已有资源 切断两个资源间的已有连接

Page 54: 第8章  计算机网络基础

8 . 6 . 3 Internet 信息服务器 Microsoft 开发的 Internet 信息服务器

( Internet Information Server , IIS )用于实现各种网络服务。

1 . IIS 包含的组件 IIS 提供多种组件,其中一些组件是和相关的服务及工

具绑定在一起的。■ Internet Information Server (Internet 信 息

服务器,包括WWW, FTP , NNTP ,和 SMTP 服务 )■ Microsoft Transaction Server(Microsoft 事

务服务器 )■ Microsoft Index Server (Microsoft 索引服务

器)

Page 55: 第8章  计算机网络基础

■ Microsoft Certificate Server (Microsoft 认证服务器 )■ Microsoft Site Server Express(Microsoft 站

点分析快递 )■ The Microsoft Management Console

(Microsoft管理控制台, MMC)■ Active Server Page (ASP ,活动的服务器页面 )

Page 56: 第8章  计算机网络基础

■ Internet Server Application Programming Interface(ISAPI , Internet 服务器应用程序编程接口 )■ The Internet Data

Connector(IDC , Internet 数据连接器 )■ A server-side Java Virtual Machine(JVM ,

服务器端的 Java虚拟机 )■ 支持 VBScript 、 Microsoft JScript 和 CGI

Page 57: 第8章  计算机网络基础

2 . IIS 规定的标准协议 ■ Hypertext Transfer Protocol(HTTP , 超

文本传输协议 )■ File Transfer Protocol (FTP ,文件传输协议 )■ Simple Mail Transfer Protocol (SMTP ,简单

邮件传输协议 )■ Network News Transfer Protocol (NNTP ,

网络新闻传输协议 )

Page 58: 第8章  计算机网络基础

3. IIS 支持的功能 IIS 提供多种服务来完成 Internet 上信息的发布

服务,其主要服务如下:1 ) WWW 服务 (WWW Service) WWW 服务器维护网站和网页,支持在 Internet 上

发布信息,当用户要装载网页时,服务器回复基于浏览器的请求。

通过 Internet 信息服务器对高性能应用程序接口ISAPI 、 ASP 及标准 CGI脚本的支持,可以创建各种各样的 Internet 应用程序。对数据库连接的支持,可以在 Internet/Intranet 上灵活地应用 SQL 数据库信息或任何其他符合ODBC 的数据库信息。

Page 59: 第8章  计算机网络基础

2 ) FTP 服务 (FTP Service)

在 Internet 或 TCP/IP 网络中传输数据文件的最快方法就是使用文件传输协议 (FTP) 。 FTP 采用独立的 TCP 端口进行收发,几乎可以说是效率最高的传输协议。 FTP 的一个主要优点是不依赖于操作系统,一个建立在 UNIX 上的 FTP 服务器可以被任何 FTP客户端访问。比如 DDS客户、 Macintosh客户或者Windows客户。

Page 60: 第8章  计算机网络基础

3 ) SMTP 服务 (SMTP Service)

Microsoft 的 SMTP 服务通过基本的简单邮件传输协议,为 IIS站点提供基本邮件功能。包括为 IIS站点完成转发到 Internet 目的地址的邮件,以及接收Web站点管理员的来信这样一些基本的存储和转发功能。但是 SMTP 服务不支持 POPP3( 个人邮箱 )和IMAP 协议。 4) NNTP 服务 Microsoft NNTP 服务是网络新闻传输协议,它给

IIS 环境增添新闻组功能。

Page 61: 第8章  计算机网络基础

5 )事务服务器 (Transaction Server)

微 软 的 事 务 服 务 器 ( Microsoft's Transaction Server , MTS )可以保证一项事务的完整性。 使用 MTS最好的例子是银行事务。有了它,两个帐户之间的事务要么完全成功 (从 A 帐户支出存入 B 帐户 ),要么彻底失败 (钱没有从 A 帐户支也没有存入 E 帐户 )。6)索引服务器 (Index Server) Microsoft索引服务器可以通读 IIS 环境的内容并索引它的信息,使用户可以查询 IIS 环境的内容,取得所要信息的查询结果。例如,如果想查找存储在 Web站点里的一个文件或单词,用户可以向索引服务器提交一个查询,索引服务器会告之信息所在。

Page 62: 第8章  计算机网络基础

7 )认证服务器 (Certificate Server)

Microsoft 的认证服务器支持发行和管理一种用于提高安全性的设施——数字证书。

数字证书为 Web站点 (或用户 )提供了安全保证。保证用户看到的站点和文档是可信的,用户的身份也是可信的,从而保持了严格的安全性。

8 )站点分析快递 (Site Server Express)站点分析快递和它包括的工具——内容分析器

(Content Analyzer) 、 Usage Import 和Report Writer ,使 Web站点的管理员以最快的速度获得 IIS 环境的信息,并使站点的管理和布局变得合理、整洁和无差错。站点分析快递可以形成 IIS 服务配置和活动日志报告。

Page 63: 第8章  计算机网络基础

9) 安全通信安全套接 子 协 议 层 (SSL) 和安全 传 输 协 议 层

(TLS) 提供了一种在客户端和服务器端信息交换的安全方式。在 IIS 中, ASP 可以访问客户证书,以便编程人员通过其站点跟踪用户。同时,还可以将用户证书映射为 Windows 用户账号,以便管理员可以根据客户证书控制对系统资源的访问。

10) Active Server PagesASP 使用服务器端的脚本和组件创建与浏览器无

关的动态内容,提供对所有 HTTP请求和应答的访问,以及对标准数据库连接的访问,同时还允许自定义适合不同浏览器的内容。

Page 64: 第8章  计算机网络基础

习题 11 (1) 什么是计算机网络?说明其主要功能。 (2)  计算机网络如何分类 ? (3) 什么是网络体系结构 ? (4) 什么是 OSI 参考模型,各层的主要功能是什么 ?

(5)  物理层的主要特点是什么 ? (6) 比较数据报与虚电路两种服务个自的优缺点以及 适用场合。 (7) IEEE 802 局域网参考模型与 OSI 参考模型有何不 同之处 ? (8) 简述 TCP/IP 协议的基本功能 ?

Page 65: 第8章  计算机网络基础

(9) IP 报文的报头由哪几部分组成,服务级别与生存时 间的作用是什么 ?

(10) IP 地址分为哪几类 ?A 类地址最多能包含多少个主 机地址和多少个网络地址 ?

(11) 什么是网络互联 ? 网络互联主要解决什么问题 ?

(12) 网络互联可分为哪几个层次 ?

(13) 什么是浏览器 / 服务器 (Browser/Server ,简称 B/S)

模型?

Page 66: 第8章  计算机网络基础

(14) 简述一个标准的 Web请求过程。 (15) 简述 HTML/DHTML 把数据提交到服务器端的过

程。 (16) 什么是超文本传输协议?简述 HTTP 工作过程。 (17) Internet 信 息 服 务 器 (Internet Information

Server)

提供哪些服务?