1.1 OSI参考模型
OSI 模型(Open Systems Interconnection Model,开放式系统互联模型),由ISO ( International Organization for Standardization,国际标准化组织 ) 收录在ISO 7489标准中并于1984年发布。,OSI参考模型各层功能见表1-1,读者可以通过“应表会,传网数物”来记忆这7层的位置。
表1-1 OSI参考模型和各层功能
层编号 | 层 名 称 | 各层功能 |
7 | 应用层 | OSI参考模型中最靠近用户的一层,为应用程序提供网络服务。 |
6 | 表示层 | 提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。 |
5 | 会话层 | 负责建立、管理和终止表示层实体之间的通信会话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。 |
4 | 传输层 | 提供面向连接或非面向连接的数据传递以及进行重传前的差错检测。 |
3 | 网络层 | 定义逻辑地址,供路由器确定路径,负责将数据从源网络传输到目的网络 |
2 | 数据链路层 | 将比特组合成字节,再将字节组合成帧,使用链路层地址(以太网使用MAC地址)来访问介质,并进行差错检测。 |
1 | 物理层 | 在设备之间传输比特流,规定了电平、速度和电缆针脚等物理特性。 |
1.1.1网络参考模型的意义
在OSI没有出来之前我们的网络有如下问题:
- 网络设备是一个整体,比如我们买了一台电脑,如果它的CPU坏掉了,我们要把整台电脑丢弃掉,因为它在设计的时候就是一个整体。
- 各个厂商之间的设备不兼容,比如一家公司买了一台思科的交换机,那么所有的网络设备都要买思科的设备。
- 不利于开发和排错,由于没有统一的标准,所以开发和排错难度相当的大。
自从ISO推出了OSI以后,这些问题都得到了解决,今天我们的网络:
- 网络分层了,不再是一个整体,比如我们买了一台电脑,如果它的CPU坏掉了,我们只要把CPU换掉就行了,不用再把整台设备丢弃掉,买一台新的。
- 各个厂商之间的设备兼容了,比如一家公司买了一台思科的交换机,它也可以买一台华为的交换机,因华思科和华为的交换机可以通信了。
- 有利于开发和排错,OSI把网络分成了七层,降低了复杂度,更加有利于开发和排错。
1.1.2OSI参考模型每层功能详细说明
- 应用层
应用层是人和电脑相互沟通的桥梁,电脑只能识别二进制,比如(010101),我们人能识别声音、图形、文字。你把电脑当作美国人,把人当作中国人,应用层相当于一个翻译,它把中英文互译,让电脑和人可以相互通信。常见的应用层协议见表1-2。
表1-2 常见应用层协议
应用层协议 | 英文名 | 中文名 |
FTP | File Transfer Protocol | 文件传输协议 |
TFTP | Trivial File Transfer Protocol | 简单的文件传输协议 |
SNMP | Simple Network Management Protocol | 简单的网络管理协议 |
HTTP | Hyper Text Transfer Protocol | 超文本传输协议 |
SMTP | Simple Mail Transfer Protocol | 简单的邮件传输协议 |
DNS | Domain Name System | 域名系统 |
DHCP | Dynamic Host Configuration Protocol | 动态主机配置协议 |
- 表示层
表示层有如下作用:
-
- 定义数据格式:比如.jpg代表图像文件,.mp3代表音频文件等
- 加密解密:比如我的手机号是18607341061,加密算法为向后移一位,加密后的数据为2918452172,解密算法为向前移一位,解密后数据为18607341061。
- 压缩解压缩:比如我们常用的压缩软件WINRAR
- 会话层
会话层负责在表示层之间建立、管理和终止会话。比如我们通过浏览器去访问百度,在百度里搜索了马云和刘强东,它会自动分为两个页面,然后我们再关闭浏览器,在这个过程中会话层要和百度的服务器建立连接,管理连接,最后还要和百度的服务器断开连接。
- 传输层
传输层将数据分段并重组为数据流(data stream)。 TCP,UDP 都工作在传输层,当采用 TCP/IP 协议时程序开发者可以在这 2 者之间做出选择。传输层负责为实现上层应用程序的多路复用,建立会话连接和断开虚电路提供机制.通过提供透明的数据传输,他也对高层隐藏了任何与网络有关的细节信息。
- 网络层
网络层主要功能是通过逻辑寻址,跟踪设备在网络中的位置并依靠路径选择算法确定节点间传递路径;使数据分组从源端选择一条最佳路径传递到目的端;寻找最佳路径的同时还要解决网际互联的问题。工作在网络层的协议有很多,如IP、IPX、CLNP和Appletalk等。目前网络层通信协议是IP协议;IP协议有两个版本,分别是IPv4和IPv6。
- 数据链路层
数据链路层主要对来自物理层的未经加工的原始位流进行处理,通过校验、确认和重发等手段将原始的不可靠的物理连接改为无差错的数据链路。
- 物理层
物理层定义了通讯网络之间物理链路的电气或机械特性,以及激活、维护和关闭这条链路的各项操作。物理层特征参数包括:电压、数据传输率、最大传输距离、物理连接媒体等。
在网络传输过程,通常使用的物理层传输介质如下:
- 有线介质:电话线、双绞线、同轴电缆、光导纤维等
- 无线介质:卫星、微波、IR、RF、激光等。另外,还有大气,携带微波和光。
1.1.3PDU
PDU(Protocol Data Unit ,协议数据单元)就是每一层的通信数据,我们用不同的术语来指明所提到的层级,各层PDU的名称见表1-3
表1-3:各层PDU术语
OSI参考模型 | PDU英文名 | PDU中文名 |
应用层 | data | 数据 |
表示层 | data | 数据 |
会话层 | data | 数据 |
传输层 | segment | 数据段 |
网络层 | packet | 数据包 |
数据链路层 | frame | 帧 |
物理层 | bit | 比特 |
1.1.4封装与解封装
发送者在发送数据时就好像给快递打包装一样,数据发送者将数据从上层向下层进行数据封装,每经过一层就封装一个包头,到达数据链路层后,不仅要封装一个包头,还要追加一个FCS的尾部,目的是检测数据的完整性。封装流程如图1-1所示:
图1-1数据封装过程
接收方收到数据后,首先要对数据帧头进行校验,以查看数据帧在传递过程中是否失去完整性,如检验结果不完整则立即丢弃该数据帧;如校验数据帧无破损将对数据进行解封装,解封装的顺序是下层向上层解封装。OSI参考模型数据解封装过程如图1-2。
图1-2解封装过程
1.1.5OSI与TCP/IP模型对比
因为OSI协议栈比较复杂,且TCP和IP两大协议在业界被广泛使用,所以TCP/IP参考模型成为了互联网的主流参考模型。TCP/IP模型在结构上与OSI模型类似,采用分层架构,同时层与层之间联系紧密。TCP/IP标准参考模型将OSI中的数据链路层和物理层合并为网络接入层,这种划分方式其实是有悖于现实协议制定情况的,故融合了TCP/IP标准模型和OSI模型的TCP/IP对等模型被提出,后面的讲解也都将基于这种模型。它们这间的关系如图1-3所示:
图1-3各种参考模型的比较
1.2 以太网简介
以太网最早是指由DEC(Digital Equipment Corporation)、Intel和Xerox组成的DIX(DEC-Intel-Xerox)联盟开发并于1982年发布的标准。经过长期的发展,以太网已成为应用最为广泛的局域网,包括标准以太网(10 Mbit/s)、快速以太网(100 Mbit/s)、千兆以太网(1000 Mbit/s)和万兆以太网(10 Gbit/s)等。IEEE 802.3规范则是基于以太网的标准制定的,并与以太网标准相互兼容。
1.2.1以太网发展历史
1972年Bob Metcalfe”以太网之父”被Xerox雇佣为网络专家,Bob Metcalfe 来到Xerox公司的Palo Alto研究中心(PARC)的第一个任务是把Palo Alto的计算机连接到ARPANET(Internet的前身)上。1972年底Bob Metcalfe以ALOHA系统(一种无线电网络系统)为基础设计了一个网络并命名为ALTO ALOHA网络,该网络于1973年更名为以太网(Ethernet),这就是最初的以太网实验原型,该网络传输介质为粗同轴电缆,速率为2.94Mbps。1977年年底Bob Metcalfe和他的3位合作者获得了”具有冲突检测的多点数据通信系统”的专利,多点传输系统被称为CSMA/CD(Carrier Sense Multiple Access with Collision Detection,载波侦听多路访问/冲突检测)系统。从此以太网正式诞生。
1979年DEC(Digital Equipment Corporation)、Intel公司与Xerox公司联盟(简称DIX联盟),促进了以太网的标准化。1982年,DIX联盟发布了以太网的第二个版本,即Ethernet II。20世纪90年代伴随着多端口网桥的出现,共享式以太网逐渐向LAN交换机发展。1993年,全双工以太网技术突破,优点明显可同时发送和接收数据,速率翻一番。1995年,迎来快速以太网发展黄金时代。
1998年,IEEE发布了IEEE 802.3z,这是1000Mbps的以太网标准。2002年,10Gbps以太网标准IEEE 802.3ae正式发布。与1000Mbps以太网相比10Gbps仅支持全双工,传输介质只能是光纤,当下以太网已经被广泛应用。
1.2.2计算机网络拓扑结构
计算机网络拓扑(Computer Network Topology)是指由计算机组成的网络之间设备的分布情况以及连接状态.把它两画在图上就成了拓扑图。一般在图上要标明设备所处的位置,设备的名称类型,以及设备间的连接介质类型。它分为物理拓扑和逻辑拓扑两种。
常见的计算机网络拓扑结构有:总线形网络、环形网络、星形网络、环形网络、树形网络、网状网络,如图1-4所示,其各自主要的特点、优缺点见表1-4。
图1-4 6种主要计算机网络拓扑结构
表1-4 各种拓扑结构的基本说明
拓扑结构类型 | 特点 | 优点 | 缺点 |
星型网络 | 所有节点通过一个中心节点连接在一起。 | 容易在网络中增加新的节点。通信数据必须经过中心节点中转,易于实现网络监控。 | 中心节点的故障会影响到整个网络的通信。 |
总线型网络 | 所有节点通过一条总线(如同轴电缆)连接在一起 | 安装简便,节省线缆。某一节点的故障一般不会影响到整个网络的通信。 | 总线故障会影响到整个网络的通信。某一节点发出的信息可以被所有其他节点收到,安全性低。 |
环型网络 | 所有节点连成一个封闭的环形 | 节省线缆 | 增加新的节点比较麻烦,必须先中断原来的环,才能插入新节点以形成新环 |
树型网络 | 树型结构实际上是一种层次化的星型结构 | 能够快速将多个星型网络连接在一起,易于扩充网络规模。 | 层级越高的节点故障导致的网络问题越严重。 |
全网状网络 | 所有节点都通过线缆两两互联 | 具有高可靠性和高通信效率。 | 每个节点都需要大量的物理端口,同时还需要大量的互连线缆。成本高,不易扩展。 |
部分网状网络 | 只是重点节点之间才两两互连 | 成本低于全网状网络 | 可靠性比全网状网络有所降低。 |
1.2.3传输介质
数据到达物理层之后,物理层会根据物理介质的不同,将数字信号转换成光信号、电信号或者是电磁波信号。常见的传输介质有双绞线、光纤、串口线缆、无线等,如图1-5所示
图1-5物理层传输介质
1.2.4冲突域
冲突域指在物理网络中一台设备传输数据时,该物理网段上的其他所有设备都必须进行侦听而不能传输数据,如果同一个物理网段中的多个设备同时传输数据,将发生信号冲突导致数据无法正常传递。冲突域中的典型拓扑结构是总线型结构,所有的信号都在一条总线上发送,就好比日常生活中的单行道,所有汽车都在上面跑,会造成交通拥堵。数据冲突如图1-6所示
图1-6冲突域
1.2.3广播域
广播域就是将多台设备放到一个组中形成广播域,在同一个广播域中的任何一台设备发送的广播帧,其他设备都会收到。就好比在一个大教室里,老师在台上讲课,所有学生都能听到,而非本班级的学生是听不到的;这是因为”班级”概念隔离了广播域。广播域中典型设备是交换机,它能实现冲突域划分,每个接口是一个冲突域,但是交换机整体还是一个广播域。
网络入门课程:华为HCIA-Datacom全套学习视频课-学习视频教程-腾讯课堂
1.2.4 CSMA/CD协议
CSMA/CD协议是一种在冲突域中避免数据信号冲突的协议,当主机想通过网络传输数据时,因为对网络线路会进行监视侦听,首先检查线路上是否有信号在传输。如果没有信号在传输则该主机开始传输数据,并在传输的过程中继续监视侦听,如发现其他信号,传输数据的主机立即发送一个拥塞信号,其他主机检测到拥塞信号后会执行退避算法并启动一个定时器,该定时器有效期内不传输任何数据。综上所述可以总结为”随时侦听、闲则转发、忙则等待”CSMA/CD协议的工作原理如图1-7所示。
图1-7 CSMA/CD协议工作原理
1.2.5通信方式
在数据通信中,通信的方式包括单工、半双工和全双工三种模式,同一物理链路上两台设备工作的双工模式必须保持一致。
单工通信,信息的流向无论何时只能由一方指向一方;广播通信、传统电视系统都是单工通信。
半双工通信,信息的流向可以进行切换,也就是说数据发送者与接收者两个角色可以根据网络环境改变的。但是发送和接收是占用同一信道,会造成数据冲突;常见的半双工通信方式有对讲机系统。
全双工通信,信息的流向是任意的,无关发送者与接收者的角色固定;可以在发送数据的同时,进行数据的接收。简单来说全双工通信就好比一条双向车道,发送数据和接收数据是分开的,互不冲突,信道的利用率也是100%;生活中我们使用移动电话通话就是全双工通信的应用。三种通信方式对比如图1-8所示。
图1-8 单工、半双工、全双工通信方式
12.6MAC地址
MAC(Media Access Control,媒体访问控制)地址是在IEEE 802标准中定义并规范的,凡是符合IEEE802标准的网络接口卡(如以太网卡、令牌环网卡等)都必须拥有一个MAC地址。并不是所有网卡都必须拥有MAC地址;以下所说的网卡指以太网卡。MAC地址是全球唯一的硬件地址,像我们的身份证一样用以识别身份,MAC地址用来识别以太网中的一台设备的地址。
MAC地址长度为48位,由两部分组成。前24bit为厂商代码,简称OUI(Organizationally Unique Identifier,组织唯一标识符,又称厂商唯一代码),后24bit由厂商自定义。制造商在制造网卡之前,必须先向IEEE注册,然后由IANA(The Internet Assigned Numbers Authority,互联网号码分配机构)分配,它的结构如图1-10所示:
图1-10 MAC地址的组成
MAC地址特殊位的置位不同标识的地址类型也不同,如图1-11所示:
图1-11 MAC的分类
MAC地址的分类标准如下:
- 如果第一个字节的第一位为”1”,则为广播MAC地址。
- 如果第一个字节的末位置为”1”,则为组播MAC地址。
- 如果第一个字节的末位置为”0”,则为单播MAC地址。
12.7以太网帧格式
以太网中有两种数据帧的封装格式,分别是IEEE 802.3和Ethernet II(以太网二型)。两种格式如图1-9所示。两种帧格式存在一定的差别,都应用于以太网;现有的网络环境中网络设备都可以兼容两种格式。
图1-9 两种以太网数据帧封装结构
以下为Ethernet II数据帧格式字段描述
-
- 目的地址:用6个字节来表示帧的接收者。目的地址可以是单播、组播、广播地址中任意一类。
- 源地址:用6个字节来表示帧的发送者。不同于目的地址,源地址只能是单播地址。
- 类型:用来表示载荷数据的类型。常见类型有0x0800(IPv4 Packet,前缀0x表示十六进制)、0x86dd(IPv6 Packet)、0x0806(ARP Packet)等。
- 数据:帧的有效载荷——数据内容体现。本字段最短46字节,最长1500字节。
- FCS:该字段使用4个字节来存储CRC(Cyclic Redundancy Check,循环冗余码校验)结果;其作用是对帧进行差错检测,如接收者发现校验结果与FCS字段内容不一致,则丢弃该数据帧;反之接收。
IEEE 802.3数据帧格式中,目的地址、源地址、数据载荷、FCS字段的功能和作用与Ethernet II格式基本一致;而长度字段仅仅只是用2个字节空间标识IEEE 802.3数据帧的长度。
1.3练习题
选择题
- OSI参考模型从高层到底层分别是?( )
A、应用层 传输层 网络层 数据链路层 物理层
B、应用层 会话层 表示层 传输层 网络层 数据链路层 物理层
C、应用层 表示层 会话层 网络层 传输层 数据链路层 物理层
- 应用层 表示层 会话层 传输层 网络层 数据链路层 物理层
- 如图1-10所示的网络中,下列描述正确的是?( )
图1-10 网络拓扑结构
A、RTA与SWC之间的网络为同一个冲突域
B、SWA与SWC之间的网络为同一个冲突域
C、SWA与SWB之间的网络为同一个广播域
D、SWA与SWC之间的网络为同一个广播域
- 如果一个以太网数据帧的Length/Type=0x8100,下列说法正确的是?( )
A、这个数据帧上层一定存在IP首部
B、这个数据帧一定携带了VLAN TAG
C、这个数据帧上层一定存在UDP首部
D、这个数据上层一定存在TCP首部
- 网络管理员在网络中捕获到了一个数据帧.其目的MAC地址01-00-5E-AO-B1-C3,关于该mac地址的说法正确的是?( )
A、它是一个组播MAC地址
B、它是一个单播MAC地址
C、它是一个非法MAC地址
D、它是一个广播 MAC地址
- 关于OSI参考模型中网络层的功能说法正确的是?( )
A、在设备之间传输比特流规定了电平、速度和电缆针脚
B、OSI参考模型中最靠近用户的那一层,为应用程序提供网络服务
C、提供面向连接或非面向连接的数据传递以及进行重传前的差错检测
D、将比特组合成字节,再将字节组合成帧,使用链路层地址(以太网使用MAC地址)来访问介质,并进行差错检测
E、提供逻辑地址,实现数据从源到目的地的转发
答案:1.D 2.BD 3.B 4.A 5.E