#网络基础知识
##计算机分类
计算机自诞生伊始,经历了一系列演变与发展。大型通用计算机、超级计算机、小型机、个人电脑、工作站、便携式电脑以及现如今的智能手机终端等都是这一过程的产物。他们的性能逐年增强,价格却逐年下降,机体规模也正在逐渐变小。
##独立模式到网络互连模式
最早,计算机以单机模式被广泛使用。随着不断发展,人们已不再局限于单机模式,而是将一个个计算机连接在一起,形成一个计算机网络。连接多台计算机可以实现信息共享,同时还能在两台物理位置较远的机器之间即使传递消息。根据计算机网络规模的不同,又可分为WAN(Wide Area Network,广域网)和LAN(Local Area Network,局域网)。
##计算机与网络发展的7个阶段
###批处理(Batch Processing)20世纪50年代
所谓批处理,是指事先将用户程序和数据装入卡带或磁带,并由计算机按照一定的顺序读取,使用户所要执行的这些程序和数据能够一并批量得到处理的方式。当时这种计算机价格昂贵体积巨大,无法在一般到的办公场所中使用。而且用户除了事先将程序和数据装入卡带或磁带送到这样的中心运行之外,别无选择。当时的计算机操作起来相当复杂,不是所有人都能够轻松自如地使用,必须有专门的操作员在使用。
批处理时代的计算机主要用于大规模计算或处理,那时的计算机还不是一个便于普通人使用的工具。
###分时系统(TSS) 20世纪60年代
所谓分时系统,是指多个终端与同一个计算机连接,允许多个用户同时使用一台计算机的系统。当时计算机造价非常昂贵,分时系统解决了一人一机的问题。这也体现了分时系统的一个重要特性——独占性。
分时系统中每个终端与计算机之间使用通信线路连接形成一个星型结构,网络(通信)与计算机之间的关系逐渐浮出水面。小型机也随机产生,办公场所与工厂也逐渐引入计算机。
###计算机之间的通信
20世纪70年代,计算机性能飞速发展,体积也越来越小,价格急剧下降。计算机的使用范围也逐渐扩大,为了提高工作效率,人们开始研究计算机之间的通信技术。有了通信技术,人们能够很轻松地即时读取另一台计算机中的数据,从而极大地缩短了传送数据的时间。人们不再限于使用一台计算机进行处理,而是逐渐使用多台计算机分布式处理,最终一并得到返回结果。这一趋势打破了一家公司用一台计算机处理业务的局面,使每家公司内部能够以部门为单位引入计算机,来处理部门内部的数据。然后经通信线路传送到总部的计算机,再由总部计算机处理并得到最终的数据结果。
###计算机网络的产生
20世纪70年代初期,人们开始实验基于分组交换技术的计算机网络,着手研究不同厂商的计算机之间相互通信的技术。到了80年代,一种能够互联多种计算机的网络随之诞生。它能够让各式各样的计算机相互连接,从大型的超级计算机或主机到小型的个人电脑。窗口系统的发明,拉近了人们与网络之间的距离,使用户更加体会到了网络的便捷之处。用户可以同时执行多个程序,还能在这些程序之间自由地切换作业。
###互联网的普及
20世纪90年代,专注于信息处理的公司和大学已为每一位员工或研究人员分配了一台计算机,形成了“一人一机”的环境。在这种环境中,计算机的使用遇到了很多新的问题,后来人们推出了“瘦身”和“多供应商连接”(异构型计算机之间的连接)这两个口号。其目的在于通过连接不同厂商的计算机建立一个成本更低的网络环境。而连接异构型计算机的通信网络技术就是现在我们看到的互联网技术。例如,电子邮件(E-mail)、万维网(WWW,World Wide Web)。
###以互联网技术为中心的时代
许多发展道路各不相同的网络技术也都在向互联网靠拢。例如,曾经一直作为通信基础设施、支撑通信网络的电话网,随着互联网的快速发展,其地位也随着时间的推移为IP(Internet Protocol)网所取代,而IP网本身就是互联网技术的产物。通过IP网,人们不仅可以实现电话通信、电视播放,还能实现计算机之间的通信,建立互联网。
###从“单纯建立连接”到“安全建立连接”
在互联网普及的初期,人们更关注单纯的连接性,以不受任何限制地建立互联网连接为最终目的。然而现在,人们已不再满足于“单纯建立连接”,而是更为追求“安全建立连接”地目标。公司和社会团体在建立互联网连接前,应理解通信网络地机制、充分考虑联网后地日常运维流程以及基本的“自我防卫”手段。
###手握金刚钻的TCP/IP
互联网是由许多独立发展的网络通信技术融合而成。能够使它们之间不断融合并实现统一的正是TCP/IP技术。TCP/IP是通讯协议的统称。
##协议
###协议随处可见
在计算机网络与信息通信领域,人们经常提及“协议”。互联网中常用的具有代表性的协议有IP、TCP、HTTP等。而LAN(局域网)中常用的协议有IPX/SPX等。
计算机网络体系结构将网络协议进行了系统的归纳。TCP/IP就是这些协议的统称。
###协议的重要性
协议就是计算机之间通过网络实现通信时事先达成的一种“约定”。这种“约定”使那些由不同厂商的设备、不同的CPU以及不同的操作系统组成的计算机之间,只要遵循相同的协议就能够实现通信。反之,如果所使用的协议不同,就无法实现通信。
协议可以分为很多种,每一种协议都明确地界定了他的行为规范。两台计算机之间必须能够支持相同的协议,并遵循相同协议进行处理这样才能实现相互通信。
###分组交换协议
分组交换是指将大数据分割成为一个个叫做包(packet)的较小单位进行传输的方法。计算机通信也会在每一个分组中附加上源主机地址和目标主机地址送给通信线路。这些发送端地址、接受端地址以及分组序号写入的部分称为“报文首部”。
##协议分层与OSI(Open System Interconnection)参考模型
ISO在指定标准化OSI之前,对网络体系结构相关的问题进行了充分的讨论,最终提出了作为通信协议设计指标的OSI参考模型。
7 | 应用层 |
---|---|
6 | 表示层 |
5 | 会话层 |
4 | 传输层 |
3 | 网络层 |
2 | 数据链路层 |
1 | 物理层 |
OSI参考模型中定义了每一层的“作用”
定义每一层“作用”的是“协议”
“协议”是约定,其具体内容为“规范”
我们日常所使用的就是遵循各个协议具体“规范”的产品和通信手段
###OSI参考模型中各个分层的作用
7应用层
为应用程序提供服务并规定应用程序中通信相关的细节。包括文件传输、电子邮件、远程登录(虚拟终端)等协议。
6表示层
将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换为上层能够处理的格式。因此它主要负责数据格式的转换。
5会话层
负责建立和断开通信连接(数据流动的逻辑通路),以及数据的分割等数据传输相关的管理。
4传输层
起着可靠传输的作用。只在通信双方节点上进行处理,而无需在路由上处理。
3网络层
将数据传输到目标地址。目标地址可以是多个网络通过路由器连接而成的某一个地址。因此这一层主要负责寻址和路由选择。
2数据链路层
负责物理层面上的、节点之间的通信传输。
将0、1序列划分为具有意义的数据帧传送给对端(数据帧的生成与接收)。
1物理层
负责0、1比特流(0、1序列)与电压的高低、光的闪灭之间的互换。
##传输方式的分类
###面向有连接型与面向无连接型
面向有连接型
在发送数据之前,需要在收发主机之间连接一条通信线路。
面向无连接型
面向无连接型不要求建立和断开连接。发送端可于任何时候自由发送数据。接收端需要时常确认是否收到了数据。
###电路交换与分组交换
网络通信方式大致分为以上两种。
电路交换历史相对久远,主要用于过去的电话网。
分组交换技术是一种较新的通信方式,从20世纪60年代后半叶才开始逐渐被人们认可。TCP/IP采用的就是分组交换技术。在电路交换中,交换机主要负责数据的中转处理,计算机首先被连接到交换机上,而交换机之间则由众多通信线路再继续连接。计算机之间在发送数据时,需要通过交换机与目标主机建立通信电路。我们将连接电路称为建立连接。建立好连接以后,用户就可以一直使用这条电路,直到该连接被断开为止。如果某条电路只是用来连接两台计算机的通信线路,就意味着只需在这两台计算机之间实现通信,因此这两台计算机是可以独占线路进行数据传输的。但是,如果一条电路上连接了多台计算机,而这些计算机之间需要进行相互传递数据,就会出现新的问题。用传统的电路交换技术在收发信息时会独占整个电路,其他计算机只能等待这台计算机处理结束以后才有机会使用这条电路收发数据。为此,产生了分组交换。就是让连接到通信电路的计算机将索要发送的数据分成多个数据包,按照一定的顺序排列之后分别发送。用分组交换将数据细分后,所有的计算机就i可以一齐收发数据,这样也就提高了通信线路的利用率。在每个分组的首部写入发送端和接收端的地址,就可以区分每个数据发往的目的地。
在分组交换中,由分组交换机(路由器)连接通信线路。分组交换的大致处理过程是:发送端计算机将数据分组发送给路由器,路由器收到这些分组数据以后,缓存到自己的缓冲区,然后再转发给目标计算机。故分组交换也有另一个名称:蓄积交换。
分组交换中,计算机与路由器之间以及路由器与路由器之间通常只有一条通信线路。因此,这条线路其实是一条共享线路。在电路交换中,计算机之间的传输速度不变。然而在分组交换中,通信线路的速度可能会有所不同。根据网络拥堵的情况,数据达到目标地址的时间有长有短。路由器的缓存饱和或溢出时,甚至可能会发生分组数据丢失、无法发送到对端的情况。
###根据接收端数量分类
根据目标地址的个数分为单播、广播、多播和任播。
单播:一对一通信。
广播:将消息从一台主机发送给与之相连的所有其他主机。进行广播通信的计算机的广播范围叫做广播域。
多播:类似于广播,将消息发给多个接收主机。不同之处在于多播要限定某一组主机作为接受端。
任播:在特定的多台主机中选出一台作为接受端的一种通信方式。即在一组内一台发送主机只跟一台接收主机通信。
##地址
发送端和接收端可以被视为通信主体。他们被一个叫做“地址”的信息加以标识。
###地址的唯一性
一个地址必须明确的表示一个主体对象。在同一个通信网络中不允许由两个相同地址的通信主体存在。即地址的唯一性。
###地址的层次性
当地址总数过多时,地址就需要层次性。
MAC地址和IP地址在标识一个通信主体时虽然都具有唯一性,只有IP地址具有层次性。
MAC地址由设备制造厂商针对每块网卡进行分别指定。人们可以通过制造厂商识别号、制造商内部产品编号以及产品通用编号确保MAC地址的唯一性。在寻址时,却不考虑MAC地址的层次,故不能算作有层次的地址。即使MAC地址时真正负责通信的地址。
IP地址由网络号和主机号两部分组成。网络号表示一个网段。
网络传输中,每个节点会根据分组数据的地址信息,来判断该报文应该由哪个网卡发送出去。各个地址会参考一个发出接口列表。MAc地址叫做地址转发表(记录的是MAC地址本身),而IP地址中所参考的叫做路由控制表(记录的IP地址是集中了之后的网络号)。
##网络的构成要素
设备 | 作用 |
---|---|
网卡(Network Interface) | 使计算机联网的设备 |
中继器(Repeater) | 从物理层上延长网络的设备 |
网桥(Bridge)/2层交换机 | 从数据链路层上延长网络的设备 |
路由器(Router)/3层交换机 | 通过网络层转发分组数据的设备 |
4-7层交换机 | 处理传输层以上各层网络传输的设备 |
网关(Gateway) | 转换协议的设备 |
###通信媒介与数据链路
计算机之间通过电缆相互连接。电缆可以分为很多种,如双绞线电缆、光纤电缆。根据数据链路的不同选用的电缆类型也不尽相同。媒介也可以分为电波、微波等不同类型的电磁波。
###网卡
任何一台计算机连接网络时,必须要使用网卡(全称为网络接口卡)。网络接口卡(NIC)有时也被叫做网络适配器、网卡、LAN卡。
###中继器
中继器是在OSI模型的第一层——物理层面上延长网络的设备。由电缆传过来的电信号或光信号经由中继器的波形调整和放大再传给另一个电缆。一般情况下,中继器的两端连接的是相同的通信媒介,但有的中继器有可以完成不同媒介之间的转接工作。中继器通过物理层进行网络延长,但其距离也并非可以无限扩大。
有些中继器可以提供多个端口服务。这种中继器被称作中继集线器或集线器。
###网桥/2层交换机
网桥是在OSI模型的第二层——数据链路层面上连接两个网络的设备。它能够识别数据链路层中的数据帧,并将这些数据帧临时存储于内存,再重新信号作为一个全新的帧转发给相连的另一个网段。数据链路的数据帧中有一个数据位叫做FCS,用以校验数据是否正确送达目的地。网桥还能通过地址自学机制和过滤功能控制网络流量。
这类功能是OSI模型的第2层(数据链路层)所具有的功能。故,有时也把网桥称作2层交换机(L2交换机)。
有些网桥能够判断是否将数据报文转发给相邻的网段,这种网桥被称作自学式网桥。这类网桥会记住曾经通过自己转发的所有数据帧的MAC地址,并保存到自己的内存表。
以太网等网络中经常使用的交换集线器(Hub),现在基本也属于网桥的一种。
###路由器/3层交换机
路由器是在OSI模型的第三层——网络层面上连接两个网络、并对分组保文进行转发的设备。网桥是根据物理地址(MAC地址)进行处理,而路由器/3层交换机则是根据IP地址进行处理的。由此,TCP/IP中网络层的地址就成为了IP地址。路由器可以连接不同的数据链路。路由器还有分担网络负荷的作用,甚至有些路由器具备一定的网络安全功能。
###4-7层交换机
4-7层交换机负责处理OSI模型中从传输层至应用层的数据。如果用TCP/IP分层模型来表示,4-7层交换机就是以TCP等协议的传输层及其上面的应用层为基础,分析收发数据,并对其进行特定的处理。优先处理对及时性要求高的通信请求,放缓处理稍有延迟也并无大碍的通信请求。这种处理被称为带宽控制,也是4-7层交换机的重要功能之一。
###网关
网关是OSI参考模型中负责将从传输层到应用层的数据进行转换和转发的设备。此外,它通常还会使用一个表示层或应用层网关,在两个不能直接通信的协议之间进行翻译,最终实现两者之间的通信。网关负责读取完各种不同的协议后,对他们逐一进行合理的转换,再将相应的数据转发出去。
代理服务器,也称为应用网关,通过代理服务器,客户端与服务器之间无需在网络层上直接通信,而是从传输层到应用层对数据和访问进行各种控制和处理。防火墙就是一种一款通过网关通信,针对不同应用提高安全性的产品。
##现代网络实态
###网络构成
计算机网络的“骨干(核心)
选用高速路由器相互连接快速传输大量数据。
边缘网络
计算机网络的出入口,常用的设备有多功能路由器和3层交换机。
接入层(汇聚层)
计算机网络连接“边缘网络”的部分。
###互联网通信
人们在家里或公司连接互联网时,一般会使互联网接入服务。联网之后,汇集到无线局域网路由器和最近交换机的通信会再次被连接到前面所提的”接入层“。甚至还有可能通过”边缘网络“或”主干网“实现与目标地址之间的通信。
###移动通信
手机一打开,就会自动与距离最近的基站发生无线通信。基站上设有特定手机基站天线,基站本身也相当于网络的”接入层“。
由一部手机终端发送信号给另一个终端时,它所发出的请求会一直传送到注册对端手机号码的基站,如果对方接听了电话,就等于在这两部手机之间建立了通信连接。
基站收集的通信请求被汇集到控制中心(”边缘网络“),之后会再被接入到互连通信控制中心的主干网。