计算机网络概论
一、计算机网络概念
1.1 计算机网络的定义
计算机网络是一个将分散的、具有独立功能的计算机系统、通过通信设备与线路连接起来,由功能完善的软件实现资源共享的系统。
计算机网络的三种观点:
(1)广义观点:能实现远程信息处理的系统或达到资源共享的系统都可以成为计算机网络。
(2)资源共享观点:由独立的计算机组成的、能够实现资源共享的系统。
(3)用户透明观点:计算机网络就是一台超级计算机,资源丰富、功能强大,用户使用网络就像使用单一计算机一样,无需了解网络的存在、资源的位置,这是未来发展的目标。
计算机网络功能:
(1)数据通信 (2)资源共享 (3)分布式处理 (4)提高可靠性 (5)负载均衡
1.2 计算机网络与通信、网络的关系
通信(communication)就是信息的传递,实现通信功能的系统称为通信系统。在各种通信方式中,利用“电”来传递信息的方法称为电信;以语音通信为主要目的建立的通信系统统称为电话网络或电信网络;以发送电视信号为目的建立的通信系统称为电视网络;以数据通信为目的建立的网络称为数据通信网络;数据通信网络是计算机网络的基础或初级形式。
随着技术的进步和应用的相互渗透,电信网络、电视网络、计算机网络将逐步实现三网融合,走向统一。
二、计算机网络组成
2.1 计算机网络物理组成
从物理构成上看,计算机网络包括硬件、软件、协议三大部分。
硬件:
(1)硬件计算机或终端设备,统称为主机(host),其中部分host为服务器,部分host为客户机。
(2)前端处理机(FEP)或通信处理机或通信控制处理机(CCP),负责发送、接收数据,CCP是网卡。
(3)路由器、交换机等连接设备,交换机将计算机连接成网络,路由器将网络互联组成更大的网络。
(4)通信线路,具体完成信号的传递,包括有线线路和无线线路。
软件:
主要实现资源共享的软件、方便用户使用的各种工具软件。
协议:
协议由语法、语义和时序三部分构成。语法规定传输数据的格式,语义规定完成的功能,时序规定执行各种操作的条件、顺序关系。
协议是计算机网络的核心。一个完整的协议应完成线路管理、寻址、差错控制、流量控制、路由选择、同步控制、数据分段与装配、排序、数据转换、安全管理、计费管理等功能。
2.2 计算机网络功能组成
从功能上看,计算机网络由资源子网和通信子网两个部分组成,其中资源子网完成数据的处理、存储功能,通信子网完成数据的传输功能,资源子网相当于计算机系统,通信子网是为了连网而附加上去的通信设备、通信线路等。另外,下图是资源子网、通信子网与OSI七层模型的对应关系。(注:传输层是资源子网和通信子网的接口)
从工作方式上看,计算机网络由边缘部分和核心部分组成,其中边缘部分是用户使用的主机,核心部分由大量的网络及路由器组成,为边缘部分提供连通性和交换服务。如图示:
三、计算机网络的分类
3.1 按分布范围分类
可分为广域网WAN、城域网MAN、局域网LAN、个域网(PAN)。
广域网WAN:分布在数十公里以上区域。
城域网MAN:分布在一个城区。一般使用广域网的技术,可以看成是一个较小的广域网。
局域网LAN:分布在几十米到几千米范围,传统上,局域网与广域网使用不同的技术。注:广域网使用交换技术、局域网使用广播技术,这是两者的根本区别。
个域网PAN:一般指家庭内的网络,一般分布在几米范围内,与少量计算机设备连接成一个小型的网络,以采用无线通信方式为主。
3.2 按拓扑结构分类
按拓扑结构可以将计算机网络分为总线型、星型、环型、树型、网络型。
总线型网络:用单总线把计算机连接起来,优点是建网容易,增减节点方便,缺点是重负载时通信效率不高。
星型网络:终端或计算机都以单独的线路与中央设备相连,优点是建网容易,延迟小,便于管理,缺点是成本高,中心节点对故障敏感 。
环型网络:所有设备连接成一个环,可以是单环,也可以双环。环中信号是单向传输的,双环上的信号传输方向相反,具备自愈功能。
树型网络:节点组成树状结构,具有层次性。
网格型(网状型)网络:每个节点至少有两条路径与其他节点相连,优点是可靠性高,缺点是控制复杂,线路成本高。
3.3 按交换技术分类
按交换技术可将网络分为电路交换、报文交换、分组交换网络。
电路交换网络:在源节点和目的节点之间建立一条专用通路用于数据传输。包括建立连接、传输数据、断开连接三个阶段,当线路被释放前,线路将一直被用户占用。典型的电路交换网络是电话网,优点是直接传输数据延迟小,缺点是线路利用率低,不便进行差错控制。
报文交换网络:将数据加上源地址、目的地址、长度、校验码等辅助信息封装成报文,传至下个节点。下个节点收到后先暂存报文,待输出线路空闲时再转发给下个节点,重复这一过程直到到达目的节点。每个报文可以单独选择到达目的节点的路径,这类网络也称为存储-转发网络。其优点是(1)可以充分利用线路容量,如多路复用技术,利用空闲时间;(2)可以实现不同链路之间不同数据率的转换;(3)实现一对多、多对一的访问,这也是Internet网的基础;(4)可以实现差错控制;(5)可以实现格式转换。缺点是(1)增加资源开销;(2)增加缓冲延迟;(3)报文顺序可能发生错误,需要额外的顺序控制机制;(4)缓冲区难于管理;因报文的大小不确定,接收方在接收到报文之前不能预知报文的大小。
分组交换网络:也称包交换网络,其原理是将数据分成较短的固定长度的数据块,在每个数据块中加上源地址、目的地址等辅助信息,按存储转发方式传输。除具有报文交换网络的优点外,还具有(1)缓冲区易于管理;(2)包的平均延迟更小;(3)易标准化;(4)适合应用。现在的主流网络基本上都可以看成是分组交换网络。
3.4 按传输介质分类
可以分为有线网络和无线网络。有线网络分为双绞线、同轴电缆、光纤、光纤同轴混合网络;无线网络可以分为无线电、微波、红外等。
3.5 按用户与网络的关联程度分类
可以分为骨干网、接入网和驻地网。
四、网络体系结构
网络体系结构是从功能上描述计算机网络结构,计算机网络体系结构简称网络体系结构是分层结构,每层遵循网络协议以完成本层功能,计算机网络体系结构是计算机的各层协议的集合,体系结构是抽象的概念,而实现是运行的一些软件和硬件。
4.1 分层与体系结构
网络非常复杂,为便于研究和实现,需要按体系结构的方式进行分层,分层的基本原则如下:
(1)各层之间界面清晰自然,易于理解,相互交流尽可能少。
(2)各层功能的定义独立于具体实现的方法。
(3)下层对上层的独立性,使用下层提供的服务。
4.2 实体、接口、协议与服务
实体是分层中活动元素,同一层的实体叫对等实体。
接口是系统内部两个相邻层次之间的交往规则。
协议是通信双方实现功能的相应层之间的交往规则,协议包含语法,语义,同步,协议是实体间水平方向的。
语法:规定传输数据的格式。
语义:规定所要完成的功能。
同步:规定各种操作的顺序。
服务是为紧相邻的上层提供的功能调用,下层提供的服务通过服务访问点SAP提供(上层使用下层服务的入口),服务是实体间垂直方向的。如图:
计算机网络提供的服务可分为三类:
4.2.1 面向连接的服务与无连接的服务
面向连接的服务指在通信之前,双方需先建立连接,然后传输数据,完成后需释放连接(比如打电话就是面向连接的服务);无连接的服务指通信前不事先建立连接,需要发数据时,直接发送,(比如写信交邮局投递的过程就是无连接的服务)。
4.2.2 有应签服务与无应答服务
有应答服务指在收到数据后向发送方给出相应的应答,应答由传输系统内部自动实现,而不是用户实现(如文件传输服务);无应答服务指接收方收到数据后不自动给出应答(如WWW服务)。
4.2.3 可靠服务与不可靠服务
可靠服务指具有检错、纠错、应答机制,能保证数据正确、可靠地传送到目的地;不可靠服务指不能保证数据正确、是一种尽力而为的服务。
4.3 数据传送单位
服务数据单元SDU:为完成用户所要求的功能而应传输的数据。第N层的服务数据单元记为N-SDU。
协议控制信息PCI:控制协议操作的信息。第N层的协议控制信息记为N-PCI。
协议数据单元PDU:协议交换的数据单位。第N层的协议数据单元记为N-PDU。
三者之间的关系为: N-PDU= N-SDU + N-PCI = (N-1)SDU
4.4 OSI/ISO 与TCP/IP体系结构模型
4.4.1 OSI模型
国际标准化组织ISO于1978年提出了网络体系结构模型,称为开放系统互联参考模型OSI,共有7层,依次为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
OSI参考模型中各层的功能:
1物理层:在链路上透明地传输位。完成的工作包括线配置、确定数据传输模式、确定信号形式、对信号进行编码、连接传输介质。定义了建立、维护和拆除物理链路所具备的机械特性、电气特性、功能特性以及规程特性。
2数据链路层:把不可靠的信道变为可靠的信道。将比特组成帧,在链路上提供点到点的传输,并进行差错控制、流量控制。
1)局域网链路层协议:Ethernet、VLAN、PPPoE、QinQ。
注:QinQ(802.1Q-in-802.1Q)技术是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的Tag来达到扩展VLAN空间的功能,可以使私网VLAN透传公网。由于在骨干网中传递的报文有两层802.1Q Tag(一层公网Tag,一层私网Tag),即802.1Q-in-802.1Q,所以称之为QinQ协议。
随着以太网技术在网络中的大量部署,利用802.1Q VLAN对用户进行隔离和标识受到很大限制。因为IEEE802.1Q中定义的VLAN Tag域只有12个比特,仅能表示4096个VLAN,无法满足以太网中标识大量用户的需求,于是QinQ技术应运而生。
QinQ是通过在原有的802.1Q报文的基础上增加一层802.1Q标签来实现的,使得VLAN数量增加到4094×4094,扩展了VLAN空间。因此它又可以作为核心MPLS VPN在以太网VPN的延伸,最终形成端到端的VPN技术。
2)广域网链路层协议:FR、PPP、HDLC、ATM、X.25、PPPOA。
注:ATM是Asynchronous Transfer Mode(ATM)异步传输模式的缩写,是实现B-ISDN的业务的核心技术之一。ATM是以信元为基础的一种分组交换和复用技术。它是一种为了多种业务设计的通用的面向连接的传输模式。它适用于局域网和广域网,它具有高速数据传输率和支持许多种类型如声音、数据、传真、实时视频、CD质量音频和图像的通信。
X.25 是一个使用电话或者ISDN设备作为网络硬件设备来架构广域网的ITU-T网络协议。它的实体层,数据链路层和网络层(1-3层)都是按照OSI模型来架构的。在国际上X.25的提供者通常称X.25为分组交换网(Packet switched network),尤其是那些国营的电话公司。
ATM采用面向连接的传输方式,将数据分割成固定长度的信元,通过虚连接进行交换。ATM集交换、复用、传输为一体,在复用上采用的是异步时分复用方式,通过信息的首部或标头来区分不同信道。
3网络层:在源节点->目的节点之间进行路由选择、流量控制、差错控制、拥塞控制、顺序控制、传送包,保证报文的正确性,网络层控制着通信子网的运行,因而又称为通信子网层。
4传输层:供提端-端的可靠的、透明的数据传输,保证报文顺序的正确性、数据的完整性,传输单位是报文段;特点有:(1)可靠传输TCP或不可靠传输UDP,(2)差错控制TCP,(3)流量控制TCP,(4)复用分用。
5会话层:建立通信进程与物理名字之间的联系,提供进程之间建立、管理和终止的方法,处理同步与恢复问题。
6表示层:实现数据转换(包括格式转换、压缩的恢复、加密和解密),提供标准的应用接口、公用的通信服务、公共数据表示方法。
7应用层:对用户不透明的各种服务(所有能和用户交互产生网络流量的程序)。
4.4.2 TCP/IP 模型
美国国防部在1969年ARPANET提出了TCP/IP模型,从低到高各层依次为网络接口层、互联网层、传输层、应用层。OSI模型与TCP/IP模型的对应关系,如图:
TCP/IP 模型的作用
注:TCP/IP模型与OSI模型的作用具体是一致的。
4.4.3 TCP/IP与ISO/OSI的不同
1. OSI定义了接口、协议、服务;而TCP/IP而没有。
2. TCP/IP与ISO/OSI的面向连接和无连接。如图:
3. 面向连接与无连接的区别
面向连接分为三个阶段,第一是建立连接,在此阶段,发出一个建立连接的请求,只有在连接成功建立之后,才能开始传输数据,这是第二阶段,当数据传输完毕,必须释放连接。
无连接没有层次阶段,它直接进行数据传输。
五、数据包封装过程
注:注意各层封装的对应关系。另外,需要了解各层封装的头部信息,如传输层对应TCP报头或UDP报头,网络层对应IP报头,数据链路层对应以太网帧头,及各层对应的数据信息名称。解封装则是一个逆过程。
六、协议与网络参考模形的对应关系
6.1 TCP/IP模型,协议与层之间的对应关系:
6.2 OSI模块和TCP/IP模型与协议的对应关系:
七、常见协议与端口
(1)TCP协议
1)文件传输协议(File Transfer Protocol,FTP),数据端口为20,控制端口为21。
2)安全外壳协议(Secure Shell,SSH),端口为22。
3)远程终端协议(TCP/IP Terminal Emulation Protocol,Telnet),端口为23。
4)简单邮件传输协议(Simple Mail Transfer Protocol,SMTP),端口为25。
6)超文本传输协议(Hypertext Transfer Protocol,HTTP),端口为80。
7)边界网关协议(Border Gateway Protocol,BGP),端口为179。
8)超文本传输安全协议(Hyper Text Transfer Protocol over SecureSocket Layer,HTTPS),端口为443。
(2)UDP协议
1)简单文件传输协议(Trivial File Transfer Protocol,TFTP),端口为69。
2)路由信息协议(Routing Information Protocol,RIP),端口为520。
3)动态主机配置协议(Dynamic Host Configuration Protocol,DHCP),端口为67。
4)简单网络管理协议(Simple Network Management Protocol,SNMP),服务端端口为161,服务端端口为162。
八、特殊IP地址
(1) 0.0.0.0
表示还未分配IP地址,如网卡设置成自动获取IP地址时,还没有分配IP地址之前。
(2) 255.255.255.255
表示受限广播地址,在同一个广播域内所有主机都会接收到这个数据包,广播域的范围可变(与子网划分有关)。
(3)169.254.0.0/16
使用DHCP自动获取IP地址,当DHCP服务器发生故障,或响应时间超时,系统会为PC分配这样一个地址。
(4) 127.0.0.0/8
本地环回地址,主要用于测试或网络管理,可以做源地址也可以做为目标地址。
(5)RFC1918 私有IP地址
IPv4地址空间中有一部分特殊的地址,私有IP地址不能直接访问公网(Internet),只能在本地使用。
A类 :10.0.0.0/8 (10.0.0.1 - 10.255.255.255)1个A类地址。
B类: 172.16.0.0/12(172.16.0.1 - 172.31.255.255)16个B类地址。
C类: 192.168.0.0/16 (192.168.0.1 - 192.168.255.255) 256个C类地址。
(6) 常见组播地址
224.0.0.1 所有主机地址。
224.0.0.2 所有路由器地址。
224.0.0.5 所有运行OSPF的路由器。
224.0.0.6 DR和BDR的组播接收地址。
注:OSFP协议使用的地址是224.0.0.1、224.0.0.2、224.0.0.5、224.0.0.6。
224.0.0.9 RIPv2组播跟新地址。
224.0.0.18 VRRP组播地址。
九、特殊的MAC地址
(1)00-00-00-00-00-00
发ARP请求时,目标MAC地址为 00-00-00-00-00-00。
(2)FF-FF-FF-FF-FF-FF
发DHCP请求时,目标MAC地址为 FF-FF-FF-FF-FF-FF。