1.24k likes | 1.42k Views
第二章 网络体系结构. 本章重点 层次化体系结构: OSI 、 TCP/IP 主要层的功能及相关协议 物理层 数据链路层 网络层 传输层 应用层. 2.1 网络层次模块结构模型 2.2 OSI 参考模型 7 层层次协议 2.3 TCP/IP 分组交换网协议 2.4 IEEE802 LAN 体系结构 2.5 网络协议与操作系统. 2.1 网络层次模块结构模型
E N D
本章重点 • 层次化体系结构:OSI、TCP/IP • 主要层的功能及相关协议 • 物理层 • 数据链路层 • 网络层 • 传输层 • 应用层
2.1 网络层次模块结构模型 2.2 OSI参考模型7层层次协议 2.3 TCP/IP分组交换网协议 2.4 IEEE802 LAN体系结构 2.5 网络协议与操作系统
2.1 网络层次模块结构模型 2.1.1 计算机网络体系结构概念 计算机网络7层开放系统互联(open systems interconnection, OSI)标准。其核心内容包含高、中、低三大部分,高层是面向网络应用,低层是面向网络通信的各种功能划分,而中间层是起信息转换、信息交换(或转接)和传输路径选择等作用,即路由选择核心。 为进行网络中的数据交换而建立的规则、标准或约定称为网络协议。网络协议主要由下列三个要素组成: 语法、语义和同步(指事件实现中顺序的详细说明)。
网络体系结构发展的背景——网络的状况 • 多种通信媒介——有线、无线。。。 • 不同种类的设备——通用、专用。。。 • 不同的操作系统——Unix、Windows 。。。 • 不同的应用环境——固定、移动。。。 • 不同种类业务——分时、交互、实时。。。 • 宝贵的投资和积累——有形、无形。。。 • 用户业务的延续性——不允许出现大的跌宕起伏 它们互相交织,形成了非常复杂的系统应用环境。
网络异质性问题的解决 网络体系结构就是使这些用不同媒介连接起来的不同设备和网络系统在不同的应用环境下实现互操作性,并满足各种业务的需求的一种粘合剂,它营造了一种“生存空间”——任何厂商的任何产品、以及任何技术只要遵守这个空间的行为规则,就能够在其中生存并发展。 网络体系结构解决异质性问题采用的是分层方法。——把复杂的网络互联问题划分为若干个较小的、单一的问题,在不同层上予以解决。 就像编程时把问题分解为很多小的模块来解决一样。
层次结构方法要解决的问题 1.网络应该具有哪些层次?每一层的功能是什么?(分层与功能) 2.各层之间的关系是怎样的?它们如何进行交互?(服务与接口) 3.通信双方的数据传输要遵循哪些规则?(协议) 层次结构方法包括三个内容:分层及每层功能,服务与层间接口,协议。
层次结构方法的优点 • 把网络操作分成复杂性较低的单元,结构清晰,易于实现和维护 • 定义并提供了具有兼容性的标准接口 • 使设计人员能专心设计和开发所关心的功能模块 • 独立性强——上层只需了解下层通过层间接口提供什么服务—黑箱方法 • 适应性强——只要服务和接口不变,层内实现方法可任意改变 • 一个区域网络的变化不会影响另外一个区域的网络,因此每个区域的网络可单独升级或改造
网络的体系结构定义:指计算机网络的各层及其协议的集合(architecture)。或精确定义为这个计算机网络及其部件所应完成的功能。计算机网络的原理体系结构综合了OSI和TCP/IP的优点,本身由5层组成:应用层、运输层、网络层、物理层和数据链路层。网络的体系结构定义:指计算机网络的各层及其协议的集合(architecture)。或精确定义为这个计算机网络及其部件所应完成的功能。计算机网络的原理体系结构综合了OSI和TCP/IP的优点,本身由5层组成:应用层、运输层、网络层、物理层和数据链路层。
计算机网络的原理体系结构 • 包括5层 • 应用层:提供OSI服务 • 运输层:保证端到端的数据发送 • 网络层:负责分组发送 • 数据链路层:提供无差错帧传送 • 物理层:透明的经实际电路传送比特流
网络体系结构的几个基本概念 • 协议:为进行网络中的数据交换(通信)而建立的规则、 标准或约定。(=语义+语法+规则) • 不同层具有各自不同的协议。 • 实体:任何可以发送或接收信息的硬件/软件进程。 • 对等层:两个不同系统的同名层次。 • 对等实体:位于不同系统的同名层次中的两个实体。 • 协议作用在对等实体之间。 • 接口:相邻两层之间交互的界面,定义相邻两层之间的 操作及下层对上层的服务。 • 服务:某一层及其以下各层的一种能力,通过接口提供 给其相邻上层。
Connection Oriented Service Connectionless Service 电话系统 邮政系统 参考模式 静态分配资源;传输前需要建立连接 动态分配资源 特点 不能防止报文的丢失、损 坏、重复和失序 提供可靠的报文流服务 可靠性 仅在连接阶段需要完整的 目的地址 需要为每一个报文提供完 整的目的地址 对目的地址 的要求 在一段时间内向同一目的地 发送大量报文; 实时性要求 少量零星报文 适用场合 1.可靠消息流 - 文件传输 2.可靠字节流 - 远程登录 3.不可靠连接 - 数字化声音 1.数据报 - 广播/组播 2.可靠的数据报- 挂号邮件 3.请求应答 - 数据库查询 分类及示例 • 面向连接服务与无连接服务
应用层Application 处理网络应用 数据表示 主机间通信 端到端的连接 寻址和最短路径 介质访问(接入) 二进制传输 7 6 5 4 3 2 1 表示层Presentation 会话层session 传输层transport 网络层Network 数据链路层Data Link 物理层Physical 2.2开放系统互联参考模型(OSI/RM) • OSI参考模型将网络的不同功能划分为7层
应用层 应用层 表示层 表示层 会话层 会话层 传输层 传输层 网络层 网络层 链路层 链路层 物理层 物理层 传输介质 ISO/OSI七层协议模型 用户数据 用户数据 系统A 系统B
对等通信的实质 OSI参考模型禁止不同主机的对等层之间的直接通信。(想一想,为什么?) 实际上,每一层必须依靠相邻层提供的服务来与另一台主机的对应层通信。 上层使用下层提供的服务——Service user; 下层向上层提供服务——Service provider。 以不同国籍的人进行信息交流为例。(见下页图)
中国教师 德国教师 “你好” “Hallo” 对交谈内容的共识 P3 翻译 翻译 “Hello” “Hello” 用英语对话 P2 秘书 秘书 传真 传真 使用传真通信 P1 物理通信线路 对等通信示例:中德教师之间的对话 问题: 中国教师与德国教师之间、翻译之间,他们是在直接通信吗? 翻译、秘书各向谁提供什么样的服务? 中德教师、翻译各使用谁提供的什么服务?
系统A 系统B 消息 Pn+1 N+1 N+1 Pn N N Pn-1 N-1 N-1 • 对等层通信的实质: • 对等层实体之间虚拟通信 • 下层向上层提供服务 • 实际通信在最底层完成 右图给出了对等层通信更一般的抽象。 P3 3 3 P2 2 2 P1 1 1 物理通信线路
OSI参考模型中,对等层协议之间交换的信息单元统称为协议数据单元(PDU,Protocol Data Unit)。 而传输层及以下各层的PDU另外还有各自特定的名称: • 传输层——数据段(Segment) • 网络层——分组(数据报)(Packet) • 数据链路层——数据帧(Frame) • 物理层——比特(Bit)
协议头 数 据 • 数据封装 一台计算机要发送数据到另一台计算机,数据首先必须打包,打包的过程成为封装。 封装就是在数据前面加上特定的协议头部。 数 据 发送邮件的例子:信装入写有源地址和目的地址的信封中发送,还要写明用航空或挂号…。
OSI参考模型中每一层都要依靠下一层提供的服务。OSI参考模型中每一层都要依靠下一层提供的服务。 为了提供服务,下层把上层的PDU作为本层的数据封装,然后加入本层的头部(和尾部)。头部中含有完成数据传输所需的控制信息。 这样,数据自上而下递交的过程实际上就是不断封装的过程。到达目的地后自下而上递交的过程就是不断拆封的过程。由此可知,在物理线路上传输的数据,其外面实际上被包封了多层“信封”。 但是,某一层只能识别由对等层封装的“信封”,而对于被封装在“信封”内部的数据仅仅是拆封后将其提交给上层,本层不作任何处理。
拆封 封装 段头 数据 网络头 段头 数据 帧头 网络头 段头 帧尾 数据 数据多层封装 数据 数据 段 数据包 帧 比特 电脉冲 011101000011000010100101111010110
实际例子:TCP/IP协议的封装 应用层数据 应用层 TCP头 应用层数据 传输层 网际层 IP头 TCP头 应用层数据 数链层 帧头 IP头 TCP头 帧尾 应用层数据
OSI各层功能概述 • 第7层:应用层(Application) • 为用户的应用程序提供网络通信服务 • 识别并证实目的通信方的可用性 • 使协同工作的应用程序之间进行同步 • 判断是否为通信过程申请了足够的资源 • 应用层协议的例子: • 远程登录协议Telnet、文件传输协议FTP、 • 超文本传输协议HTTP、域名服务DNS、 • 简单邮件传输协议SMTP、邮局协议POP3等
第6层:表示层(Presentation) • 处理被传送数据的表示问题,即信息的语法和语义。如有必要,使用一种通用的数据表示格式在多种数据表示格式之间进行转换。 • 例如:在日期、货币、数值(特别是浮点数)等本地数据表示格式与标准数据表示格式之间进行转换;数据的加解密、压缩/解压缩等 本地表示1 本地表示2 表示层 公共表示 公共表示 传输层
第5层:会话层(Session) • 建立、管理和中止不同机器上的应用程序之间的会话。 • 会话:完成一项任务而进行的一系列相关的信息交换。 • 同步(解决失败后从哪里重新开始) • 设置检查点——会话失败后,恢复到最后一个检查点处,而不用从头开始。 • 例如:数据送到打印服务器上打印。接收的数据已被确认,但打印机出现故障。这时没必要再从头开始打印,只要在每页开始处设置检查点,打印出错时只需重传最后一个检查点以后的页面。
文件1 文件2 活动1 活动2 会话 • 活动管理,保证活动的完整性和正确性。 • 活动:相对独立的一组相关操作。 • 例如:一次会话传送多个文件,其中每一个文件的传送为一个活动。
第4层:传输层(Transport) • 为源端主机到目的端主机提供可靠的数据传输服务;屏蔽各类通信子网的差异,使上层不受通信子网技术变化的影响。 • 进行数据分段并组装成报文流; • 提供“面向连接”(虚电路)和“无连接”(数据报)两种服务; • 传输差错校验与恢复; • 信息流控制,防止数据传输过载。
数据报与虚电路的概念 • 数据报:无连接的服务;虚电路:面向连接的服务 • 数据报——每个分组作为一个独立的信息单位传送 • 特征:不需要连接,也无需确认 • 完整的网络地址(源和目的)——信道利用率低 • 不保证按序到达;每个分组均需进行路由选择 • 虚电路——传输前先建立一条逻辑连接,传输结束后拆除 • 特征:需要建立连接 • 仅在建立连接时需要全网地址,传输时用虚电路号 • 按序到达;仅在建立连接时需要路由选择 • 两类虚电路: • 永久虚电路——租用后便永久建立,退租后拆除。 • 交换虚电路——需要通信时建立,通信结束便拆除。
传输层的特点 • 传输层以上各层:面向应用;以下各层:面向传输。传输层位于资源子网和通信子网的交界处,起着承上启下的作用。 • 与网络层的部分服务有重叠交叉。如何平衡取决于两者的功能划分。 • 真正意义上的从源到目标实现“端到端”连接的层。 • 1-3层:链接,中继; • 4-7层:端到端
第3层:网络层(Network) • 在源端与目的端之间建立、维护、终止网络的连接。 • 功能和服务 • 最佳路由选择和数据包中转 • 流量控制和拥塞控制 • 差错检测与恢复 • 流量统计和记账
路由选择 • 如何在多条通信路径中找一条最佳路径? • 依据:速度,距离(步跳数),价格,拥塞程度 • 路由器-路由表建立与维护 • 静态:人工设置,只适用于小型网络 • 动态:运行过程中根据网络情况自动地动态 维护 • 路由算法 • 距离向量算法:RIP、CGP等 • 链路状态算法:OSPF等
第2层:数据链路层(Data Link) • 在物理线路上提供可靠的数据传输,使之对网络层呈现为一条无错的线路。 • 所关心的问题包括: • 物理地址、网络拓扑; • 组帧:把数据封装在帧中,按顺序传送,并处理返回的确认帧; • 定界与同步:产生/识别帧边界; • 差错恢复:采用重传(ARQ)的方法; • 流量控制:收发双方传输速率的匹配。
广播式信道问题(LAN or Wireless): • 涉及到如何控制对共享信道的访问。 • 将数据链路层划分为逻辑链路控制(Logical Link Control, LLC)和介质访问控制子层(Media Access Control,MAC)两个子层,由MAC子层解决介质访问控制问题。 • 两种主要的介质访问控制方法: • - CSMA/CD • - TOKEN PASSING • Token Ring • Token Bus
MAC子层的地址 • 网络中的每台主机都必须有一个48位(6Byte)的全局地址,它是该主机在全球范围的唯一标识符,与其物理位置无关。(比较IP地址) • 该全局地址称为MAC地址,也称为物理地址,通常固化在网卡上。 • 当一台计算机插上一块网卡后,该计算机的物理地址就是该网卡的MAC地址。 • MAC地址的例子(以十六进制表示): 02 · 60 · 8C · 67 · 05 · A2
Data A C FCS 校验区间 • 链路层帧的结构 网络层的分组被封装在帧的Data域中 A:MAC地址字段,包括源地址和目的地址 C:控制字段 FCS:帧检验序列,一般采用CRC校验。其校验范围包括A、C和Data字段
第1层:物理层(Physical) • 实现在物理媒体上透明地传送原始比特流。 • 定义了激活、维护和关闭终端用户之间机械的、电气的、过程的和功能的特性。 • 数据终端设备DTE、数据通信设备DCE • DTE——用于处理用户数据的设备。如计算机、路由器。 • DCE——用于把DTE发出的数字信号转换成适合于在传输介质上传输的形式。如MODEM。
物理层的特性包括: • 机械特性:物理连接器的尺寸、形状、规格 • 电气特性:信号电平,脉冲宽度,频率,数据传送速率,最大传送距离等 • 功能特性:接口引脚的功能作用 • 规程特性:信号时序,应答关系,操作过程
应用层:提供网络与最终用户之间的界面。 表示层:转化特定设备的数据和格式,使通信与设备无关。 会话层:在应用程序之间建立连接和会话,并验证用户身份。 传输层:提供节点之间可靠的数据传输,负责数据格式的转换。 网络层:实现节点间数据包的传输,处理通信堵塞和介质传输速率等问题。 链路层:保证在数据节点之间可靠地传输数据帧 物理层:规定物理线路的机械特性、电气特性、功能特性、过程特性 ISO/OSI七层协议模型----功能
2.3 TCP/IP模型 • TCP/IP起源于美国国防部高级研究规划署(DARPA)的一项研究计划——实现若干台主机的相互通信。 • 现在TCP/IP已成为Internet上通信的标准。 • TCP/IP模型包括4个概念层次: • 应用层(application) • 传输层(transport) • 网际层(internet) • 网络接口(network interface)
应用层 应用层 表示层 TCP/IP支持 所有的、标准的物理和数据链路协议 会话层 传输层 传输层 网络层 网际层 数据链路层 网络接口 物理层 • TCP/IP与OSI参考模型的对应关系 OSI参考模型 TCP/IP概念层次 7 6 5 4 3 2 1 Ethernet,802.3,802.5,FDDI等等
2.TCP/IP协议结构 Application 应用层 SMTP FTP HTTP 表示层 DNS SNMP TELNET 会话层 传输层 UDP Transport TCP 网络层 Internet IP ICMP IGMP ARP 数据链路层 WAN Technologies Network LAN Technologies 物理层
应用层 文件传输 ●FTP、TFTP、NFS 电子邮件 ●SMTP、POP3 WWW应用 ●HTTP 远程登录 ●Telnet、rlogin 网络管理 ●SNMP 名字管理 ●DNS 传输层 网际层 网络接口 • TCP/IP与应用层 应用层协议支持了文件传输、电子邮件、远程登录、网络管理、Web浏览等应用。
TCP/IP与传输层 • 传输层的两项主要功能: • 流量控制:通过滑动窗口实现; • 可靠传输:由序号和确认来实现。 • 传输层提供了TCP和UDP两种传输协议: • TCP是面向连接的、可靠的传输协议。它把报文分解为多个段进行传输,在目的站再重新装配这些段,必要时重新发送没有收到的段。 • UDP是无连接的。由于对发送的段不进行校验和确认,因此它是“不可靠”的。
应用层 传输层 网际层 网络接口 传输层提供了两种传输协议 面向连接的 ●TCP 无连接的 ●UDP
0 3 4 9 10 15 16 31 源端口 目的端口 顺序号 确认号 报头长度 保留 代码位 窗口大小 校验和 紧急指针 选项(可省略) 数据 TCP段格式
源端口(Source Port):呼叫端口的编号 目的端口(Destination Port):被叫端口的编号 顺序号(Sequence Number):数据的第一个字节的顺序号 确认号(Acknowledgment Number):所期待的下一段的顺序号 报头长度(HLEN):以32字节为单位的报头的长度 保留域(Reserved):设置为0 编码位(Code Bits):用于控制段的传输(如会话的建立和中止) 包括:URG、ACK、PSH、RST、SYN、FIN六个位 窗口大小(Window):接收方能够继续接收的字节数 校验和(Checksum):包括TCP报头和数据在内的校验和 紧急指针(Urgent Pointer):当前顺序号到紧急数据位置的偏移量 选项(Option): 数据(Data):上层协议数据
端口号 TCP和UDP都用端口(socket)号把信息传到上层。 端口号指示了正在使用的上层协议。 F T P T e l n e t S M T P D N S T F T P S N M P 应用层 21 23 25 53 69 161 传输层 TCP UDP
TCP连接的建立——三次握手 例如:A、B两个主机要建立连接 方向 消息 含义 握手 1 1. A→B SYN 我的序号是X 2. A←B ACK 知道了,你的序号是X 合并 2 3. A←B SYN 我的序号是Y 4. A→B ACK 3 知道了,你的序号是Y 序号用于跟踪通信顺序,确保多个包传输时无数据丢失。 通信双方在建立连接时必须互相交换各自的初始序号。