计算机网络基础

计算机技术与通信技术的发展和结合,产生了计算机网络,其对计算机系统的组织方式产生了深远的影响。计算机网络最常见的有工业计算机网络(Profibus现场总线、CAN总线和工业以太网等)、上用计算机网络(Internet等)已被广泛地应用于各行各业。可以说,计算机网络是IT和信息产业的基础和核心。

计算机网络简述

从建立一个网络的工程视角来看,建立因特网需要智能终端(PC、服务器、工作站等)、传输介质(光纤、同轴电缆、双绞线、无线电和卫星等)和软件(操作系统、TCP/IP协议、通信软件等)三大部分。

数据交换

数据交换是计算机网络的网络核心。根据原理不同,数据交换可分为电路交换和存储-转发交换。电路交换网络中的复用技术可分为频分复用交换和时分复用交换,存储转发交换可分为分组交换和报文交换。

  • 电路交换的基本思想是:收发双方之间的数据通信过程由三个阶段组成,分别是呼叫阶段(建立连接阶段)、数据传输阶段、释放阶段(断开阶段)。呼叫阶段负责在收发双方之间建立物理通路,包括正向呼叫阶段和方向确认阶段,然后收发双方独占这一物理线路。电路交换的优点是实时性强,管理简单。缺点是手法双方之间独占线路和全部带宽。其适用于实时交互式业务以及大数量传输。为了让更多的用户设备能够同时共用一段线路来发送自己的数据,通常将线路资源按照某种技术划分为“片”,将链路带宽划分为“片”的方法由两种:频分划分和时隙划分。
  • 存储转发交换技术的主要思想是:借鉴了邮政服务的基本思想。数据通信之前,不需要再收发双方之间建立连接,收发双方之间的数据通信以相邻两个节点之间的接力传输完成,只要相邻的两个设备之间的线路是空闲的,一方就可以将自己的数据发送给其邻居节点,下一个节点等到何其下下个节点空闲时,再转发给下下个节点,最终转发给目标节点。报文交换是把需要发送的数据打包成一个文件,分组交换则是把需要发送的数据文件分成多个较小的小文件。其使用与突发性业务、可靠性要求高的业务,如计算机通信。

计算机网络的拓扑结构

常见的拓扑结构有:网状结构、总线结构、环形结构、星形结构、树型结构

网络协议与网络体系结构

不同的设备、介质和语言的计算机网络之间进行通信和数据传输要设计并制定一系列的规则,网络协议则是一组控制数据通信的规则。一个网络协议的基本要素有:语法(指明传输数据的结构格式等)、语义(定义控制信息的具体内容)、同步(定义通信过程的时间先后和速度匹配)。

OSI/RM参考模型

在OSI/RM参考模型中,网络协议体系结构自下而上共分为七层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。每个层次都从上层取得数据,加上首部信息形成新的数据单元。

  • 物理层:其任务是实现互联系统间物理介质上位流的透明传输,实现系统间物理通信,其余各层都是虚拟通信。
  • 数据链路层:在两个数据链路层之间建立和维持一条或多条数据链路。它提供无差错(差错校验)的通信服务,为网络层提供透明的帧传输服务。
  • 网络层:接收来自传输层的报文分段,把它们转换成报文分组后送到指定的目的机。
  • 传输层:又称端-端协议。提供一种独立于通信子网的数据传输服务,即对高层隐藏通信子网的结构,使源机和目的机之间的连接就像简单的点对点的连接。
  • 会话层:为两个表示层进程建立会晤连接。
  • 表示层:为应用层提供有关信息表示的服务。
  • 应用层:为用户提供了接口,负责系统中两个应用进程之间的信息交换。

TCP/IP参考模型

在TCP/IP参考模型中,网络协议体系结构自上而下共分为4层,分别是网络接口层、互联网络层、传输层和应用层。

  • Host-to-Network。未做真正描述,仅指出主机必须使用某种协议与网络连接,以便通过网络传递IP分组。
  • Internet层。定义了标准的分组格式和协议(IP协议),控制通信子网提供源点到目的点的IP分组传送(提供不可靠的无连接服务)。
  • Transport层。提供源端到目的端主机上对等实体之间的数据传送服务。TCP和UDP处于此层。
  • Application层。提供各种Internet管理和应用服务功能。

网络协议混合模型

在混合模型中,网络协议体系结构自上而下分为5层,分别是物理层、数据链路层、网络层、传输层和应用层。

  • 物理层。提供透明的比特流传输服务,在信道上传送位流。数据传输方式分为模拟传输(宽度传输)和数字传输(基带传输)。信息交互方式分为单工、半双工、双工。编码与调制:数字数据/模拟数据 -> 数字信号/模拟信号。信道复用技术:频分、时分、波分、码分等。
  • 数据链路层(MAC地址)。提供相邻节点之间的透明帧传输服务,同时也包括差错控制技术等。成帧技术有四种:字符计数法、字符填充法、位填充法和物理层违例码。差错控制技术:奇偶校验技术、海明编码、CRC编码。数据重传和流量控制:停止/等待协议、连续ARQ协议和滑动窗口协议等。
  • 网络层(IP地址)。提供源主机到目的机之间的数据报文传输服务,同时也提供路由选择服务等。因特网中典型的网络层协议有IP、路由协议。网络层必须具备交换、路由和连接管理等三类基本功能。虚电路通信子网(面向连接)和数据报通信子网(面向无连接)。
  • 传输层(端口)。提供源主机进程和目的主机进程之间的数据传输服务。Internet中典型的传输层协议有TCP和UDP。TCP使用三次握手建立连接。
  • 应用层。支持网络应用,接收来自应用程序的进程并未应用程序提供数据传输服务。Internet中常见的应用层协议有FTP、SMTP、HTTP等。DNS是运行在UDP协议上的域名解析系统。

物理层、链路层

物理层

采取不同的传输工作方式(单工、半双工、全双工),将相应的01数据(数字/模拟数据),进行加工转换(调制、编码)为在不同传输介质(双绞线、光纤等)传输的不同格式(高低电平、曼彻斯特、块编码)的信号(数字/模拟信号)。一个脉冲称为一个码元,由于传输的物理特性等限制,有最大传输速率限制(波特率:奈归斯特、比特率:香农)以及通道共享方案(频分、时分等)。

  1. 数字数据到数字信号的编码技术有:不归零编码技术(NRZ-L和NRZ-I反相)、曼彻斯特编码技术(每位中间有电平跳变、二义性)、差分曼彻斯特编码技术以及以太网中采用的4B/5B、8B/10B块编码技术(用NRZ-I编码方式传输,不多于3个连续的0)等。
  2. 奈茥斯特定律:理想的、频带宽度为W的低通信道,最高码元传输速率-波特率是2W。同样的带通信道,最高波特率为W。波特率:信号/码元每秒钟变化次数。
  3. 香农公式:极限比特率为C=Wlog2(1+S/N)。S/N表示信噪比,S信道内信号的平均功率,N是信道内部的高斯噪声功率。比特率:每秒钟传递bit位个数

数据链路层

通过调用物理层服务,再结合差错控制(奇偶校验、海明码、CRC编码)、数据重传&流量控制(发送应答、连续ARQ、ARQ选择重传等滑动窗口协议)等在网络节点间实现可靠的帧传输服务。另外还需要考虑链路控制方案ALOHA等。

  1. 成帧的基本技术有:字符计数成帧技术(计数首部+数据)、字符填充成帧技术(帧头DLE STX+数据+DLE ETX)、位填充成帧技术(帧头01111110+数据+01111110)、物理层违例码成帧技术等。
  2. 以太网常采用Ethernet II帧格式:前导码(8byte)+目的地址(6)+源地址(6)+类型(2)+数据+FCS(4)。其能传递的最大帧是1518,减去以太网帧头(14)和帧尾(4),故最大传输单元MTU为1500字节(为什么没有前导码?希望有朋友可以指出)。
  3. 传输速率又称带宽,表示两个设备间数据流动的物理速度,单位为bps(Bits Per Second)。主机之间实际的传输速率被称为吞吐量(单位也是bps),与带宽、主机CPU处理能力、网络拥堵程度、报文数据字段比例等有关。

网络的构成要素

计算机网络的组成

通信媒介与数据链路

计算机之间通过电缆相互连接。电缆分为很多种,包括双绞线电缆、光纤电缆、同轴电缆、串行电缆等。不同的数据链路有不同的媒介、传输速率和用途等。例如,以太网的通信媒介有同轴电缆、双绞线电缆、光纤电缆。

网卡NIC

任何一台计算机连接网络时,都需要使用网卡(网络接口卡),又叫网络适配器、网卡、LAN卡。笔记本一般都有内置NIC。

中继器

中继器是在物理层面上延长网络的设备,由电缆传过来的电信号或者光信号通过中继器进行波形调整和放大,再传到另一个电缆。一般情况下,中继器两端的通信介质是相同的。有些中继器可以提供多个端口服务,这种中继器称为中继集线器或集线器。
通过中继器而进行的网络延长,其距离有限制。比如一个10Mbps的以太网最多可以用4个中继器分段连接,而一个100Mbps的以太网则最多只能连两个中继器。

网桥/2层交换机

网桥是在链路层层面上连接两个网络的设备。它能够识别数据链路层中的数据帧,并将这些数据帧临时存储于内存,再重新生成信号作为一个全新的帧转发给相邻的另一个网段。网桥可以校验数据是否正确送达目的地,并能通过地址(MAC地址)自学机制和过滤功能控制网络流量。以太网等网络中经常使用的交换集线器(Hub),现在基本也属于网桥的一种。

路由器/3层交换机

路由器是在网络层层面上连接两个网络、并对分组报文进行转发的设备。路由器是根据IP地址进行处理的。路由器可以连接两个不同的数据链路,现在人们在家或实验室连接互联网时使用的宽度路由器也是路由器的一种。路由器还有分担网络负荷的作用(隔绝链路层的广播消息等),有些路由器还具备一定的网络安全功能。

4~7层交换机

4~7层交换机负责处理从传输层到应用层的数据。它以TCP等协议的传输层以及上面的应用层为基础,分析收发数据,并对其进行特定的处理。如,企业通常假设多台服务器(同一URL)来负担前端的访问需求,这些服务器的前端加的负载均衡器就是其一。以及,实际通信是,在网络拥堵时,优先处理语音等及时性要求高的通信请求的宽度控制也是4~7层交换机的重要功能。其他如广域网加速器、特殊应用访问加速以及防火墙(防止互联网的非法访问)等。

网关

网关是OSI参考模型中负责将从运输层到应用层的数据进行转换和转发的设备。网关与4~7层交换机的区别是网关还负责对数据进行转换。如互联网邮件和手机邮件之间的转换服务。以及,在万维网中,为了控制网络流量以及处于安全,使用的代理服务器也属于网关的一种——应用网关。

网络安全

防火墙

防火墙的种类和形态有很多种,如专门过滤特定数据包的包过滤防火墙、数据到达应用后由应用处理并拒绝非法访问的应用网关等,其基本设计思路为:暴露给危险的主机和路由器的个数要有限。比如,设置防火墙,可以限制从互联网访问的主机个数,限制只能内网访问,限制端口的访问等。

IDS(入侵检测系统)

数据包符合安全策略,防火墙会让其通过,但无法判断当前访问是否为非法访问,而IDS正是检查这种非法访问的情况,并及时通知网络管理员的系统。一般在防火墙或DMZ等便捷设备上进行设置。IDS有定期采集日志、长期监控、通知异常等功能。

反病毒/个人防火墙

反病毒和个人防火墙是继IDS和防火墙之后的另外两种安全对策,是用户使用的软件。

加密技术基础

为了防止信息的泄漏、实现机密数据的传输,出现了各种各样的加密技术(出现在各层)。如PKI、CA数字证书等。

  • 加密是利用某个值(密匙)对明文的数据通过一定的算法变换成加密数据的过程,逆反过程称为解密。
  • 身份认证技术。在实时安全对策时,有必要验证使用者的正确性和真实性,要用到认证技术。