本概括参考自此大佬总结,如有不对之处,欢迎大家指正。

第一章 概述

1.1 计算机网络的一些相关知识

  1. 三网------电信网络、有线电视网络、计算机网络

  2. 网络融合------将三种网络的功能融合在一起

  3. 计算机网络------也是一种通信基础设施,与其他两种网络不同的是计算机网络的终端设备是功能强大的计算机

1.2 互联网概述

  • 网络,互连(非"联")网,因特网的概念
  1. 起源于美国的因特网,现在是世界上最大的国际性计算机网络。

  2. 网络由若干个节点和连接这些节点的链路组成(节点可以是计算机、集线器、交换机、路由器等)。

  3. 网络和网络之间通过路由器连接起来,构成了互联网------即网络的网络。

  4. 因此,网络把许多计算机连接在一起,互联网将许多网络连接在一起。

  • 因特网发展的三个阶段

    第一阶段:单网络ARPANET------1969年美国国防部建立的第一个分组交换网;

    第二阶段:三级结构的因特网------主干网、地区网、校园网;

    第三阶段:多层次ISP(因特网服务提供者)结构的因特网。

  • 因特网标准制定的几个阶段及每个阶段的主要特点

    第一阶段:远程联机系统阶段(以单个计算机为中心);

    第二阶段:初步形成阶段(以网络为中心);

    第三阶段:互联互通阶段(提出两种国际通用的最重要的体系结构);

    第四阶段:高速网络阶段(Internet时代)。

  • 因特网交换点IXP

    更快的转发分组,更有效的利用网络资源,允许两个网络直接相连并交换分组,不需要其他网络来转发分组,IXP常采用工作在数据链路层的网络交换机,这些网络交换机都用局域网互连起来(典型的IXP由一个或多个网络交换机组成)。

1.3 互联网的标准化工作

​ 所有的互联网标准都是以RFC的形式在互联网上发表的。

​ ISOC-------因特网协会

​ IAB------因特网体系结构委员会

​ IETF------互联网工程任务组

​ IRTF------互联网研究专门工作组

1.4 互联网的组成(重点!!!)

  • 边缘部分(由所有连接在因特网上的主机组成,由用户直接使用,主要实现网络的通信和资源共享)

    在网络边缘的端系统中运行的程序之间的通信方式可以划分为两大类:

    1. 客户服务器方式(C/S方式),即Client/Server方式,它所描述的是进程之间服务和被服务的关系;

      客户(Client)------是服务的请求方

      服务器(Server)------是服务的提供方

      程序 特点 配置要求
      客户程序 主动,知道ip 不需特殊配置
      服务器程序 可同时,被动,不知道ip 有配置要求
    2. 对等方式(P2P方式),即Peer-to-Peer方式。

      对等连接软件:双方都可以下载对方已经存在硬盘中的共享文档。

  • 核心部分(由大量的网络和连接这些网络的路由器组成,向网络边缘部分的主机提供连通性服务)

    交换:就是按照某种方式动态地分配传输线路的资源。

    三类交换方式:

    • 电路交换(面向连接)

      1. 建立连接
      2. 通信
      3. 释放连接

      注意:两个用户在连接期间始终占用端到端的通信资源,连接至专用的物理通道。

      缺点:计算机数据具有突发性,通信线路的利用率很低,所以很明显该交换方式不适合计算机网络。

    • 分组交换(存储转发技术)

      ​ 分组------将报文分为一个个小的数据段

      ​ 交换------分组在各个路由器之间相互转发

      ​ 存储转发,是指将报文(要发送的整块数据)划分为几个分组,利用相关控制信息进行分装为数据单元,然后进行转发。

      分组转发步骤:

      1. 分组:在发送端,先把较长的报文划分成较短的、固定长度的数据段,每个数据段前面添加上首部构成分组,以“分组”作为数据传输单元,一次把各分组发送到接收端;

      2. 路由器存储转发:收分组,放入缓存(暂时缓存),分析首部,查转发表,转发分组;

      3. 接收端还原报文:在接收端把收到的数据恢复称为原来的报文。

    分组交换的优点:

    1. 高效:动态分配传输带宽,对通信链路时逐段占用;
    2. 灵活:以分组为传送单位和查找路由;
    3. 迅速:不必先建立连接就能向其他主机发送分组;
    4. 可靠:保证可靠性的网络协议,分布式的路由选择协议是网络有很好的生存性。

    分组交换的缺点:

    1. 分组在各结点存储转发时需要排队,造成一定的时延;

    2. 分组必须携带的首部(里面有必不可少的控制信息)造成一定开销。

    • 报文交换(现在已经很少使用)

      整个报文先传输到相邻的节点,全部存储下来后查找转发表,转发到下一个节点。

1.5 计算机网络的类别

  • 按作用范围分

    • 广域网
    • 城域网
    • 局域网
    • 个人区域网
  • 按网络的使用者
    • 公用网
    • 专用网
  • 用来把端主机接入因特网的网络
    • 接入网

1.6 计算机网络的性能指标

​ 比特(bit)是计算机中数据量的单位,也是信息论中使用的信息量的单位,来源于binary digit,意思是一个“二进制数字”,因此一个比特就是二进制数字中的一个1或0.

  • 速率(数据率或比特率)

    速率指发送数据的速率,单位是b/s或kb/s,Mb/s,Gb/s等。

    这里的速率往往是指额定速率或标称速率。

  • 带宽

    单位时间内信道能通过的最高数据率。

    带宽是指信号具有的频带宽度,单位是赫(或千赫、兆赫、吉赫等)

  • 吞吐量

    单位时间内通过某网络(信道或者接口)的实际数据量。

    吞吐量更经常地用于对显示世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。

    吞吐量受网络的带宽或网络的额定速率的限制。

  • 时延

    • 发送(传输)时延:发送端发送一个完整的数据帧所需要的时延,即从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需要的时间。


    发送时延=数据块长度(比特)/信道带宽(比特/秒)发送时延 = 数据块长度(比特)/信道带宽(比特/秒) 发送时延=数据块长度(比特)/信道带宽(比特/秒)

    • 传播时延:电磁波在信道中传播所需要的时间


    传播时延信=道长度(米)/信号在信道上的传播速率(米/秒)传播时延信 = 道长度(米)/信号在信道上的传播速率(米/秒) 传播时延信=道长度(米)/信号在信道上的传播速率(米/秒)

    注意:
    信号传输速率(即发送速率)和信号在信道上的传播速率是完全不同的概念。

    • 处理时延:主机或路由器处理数据分组时花费的时间,也就是节点进行报文存储转发处理所产生的时间。
    • 排队时延:在路由器中等待分组时间,往往取决于网络中当时的通信量。
  • 时延带宽积(以比特为单位的链路长度)

    指发送端发送的第一个比特即将到达终点时,发送端已经发出了多少个比特,因此又称为以比特为单位的链路长度。


    时延带宽积=传播时延∗信道带宽时延带宽积 = 传播时延 * 信道带宽 时延带宽积=传播时延∗信道带宽

  • 往返时延(RTT)

    从发送方发送数据开始,到发送方收到接收方的确认(接收方收到数据后立即发送确认)总共经历的时延。

  • 信道利用率

    指出某一信道有百分之多少的时间是有数据通过的。

1.7 计算机网络的体系结构------分层次的体系结构

协议是水平的,服务是垂直的。

  • SNA系统网络体系结构

    OSI标准——由国际标准化组织制定的网络标准,但在实际应用中被TCP/IP协议替代

    TCP/IP协议

    协议与划分层次——

    网络协议:(明确规定交换数据的格式和有关同步问题)为进行网络中的数据交换而采取建立的规则,标准或约定。

    三要素:语法 语义 同步

  • 具有五层协议的体系结构(结合OSI的七层协议体系结构和TCP/IP的四层结构)

    应用层——通过应用进程间的交互来完成特定网络应用

    运输层——向两个主机进程之间的通信提供通用的数据传输服务具有复用和分用的功能

    (两种协议——TCP协议UDP协议)

    网络层——分装成数据包——IP数据报使用IP协议

    数据连接层——分装成帧

    物理层——考虑的是比特流的传输问题,屏蔽传输媒体的差异性

    TCP/IP协议族示意图:

  • 相关概念:

    协议数据单元PDU:OSI参考模型为对等层次之间传送的数据单位的命名

    实体:任何可以接受或者发送信息的软件进程或者硬件

    协议:控制两个对等实体进行通信的规则的集合

    在协议控制下,下层向上层提供服务,所以协议是水平的,服务是垂直的

第二章 物理层

透明地传输比特流。

2.1 物理层的基本概念

  • 物理层的作用:屏蔽掉传输媒体和通信手段(即物理设备)的差异。

  • 物理层的主要任务

    • 确定与传输媒体的接口有关的一些特性;

      机械特性、电气特性、功能特性、过程特性。

    • 完成数据在计算机内部(并行传输)与通信电路上(串型传输)之间的串并传输方式的转换。

2.2 数据通信的基本知识

  • 数据通信系统的模型

    源系统(源点,发送器)—通信系统(传输或者网络)—目的系统(接收器,终点)

  • 常用的术语

    • 消息:传送的信息
    • 数据:消息的实体,即用特定方式表示的信息
    • 信号(分为两类):数据的电气或者电磁表现
      • 模拟信号(或连续信号)—代表消息的参数的取值是连续的;
      • 数字信号(或离散信号)—代表消息的参数的取值是离散的。
  • 通信:向某一个方向传送信息的媒体

    • 单向信道(又称为单工通信):一方发送,一方接收;

    • 双向交替通信(又称为半双工通信):双方都可以发送信息,但不能同时进行;

    • 双向同时信道(又称为全双工通信):双方可同时发送信息。

    • 调制:将来自源信号的低频甚至直流信号进行交换,使得这种低频直流信号可以便于在信道内传输

    • 基带调制:把数字信号转换为另一种形式的数字信号,即仅对信号的波形进行变换,可称之为编码调制;

    • 带通调制:使用载波进行调制,将基带信号的频率搬移到高频段,并将之转换为模拟信号。

2.3 导引型传输媒体

  • 双绞线

    特点:成本低,柔性好,易于连接;抗电磁干扰性较差;导线越粗,通信距离越远,价格也越高,可通过优化编码提升速率;频率越高衰减越大;通信距离一般为几到十几公里。

  • 同轴电缆

    特点:具有很好的抗干扰特性。

  • 光纤(光导纤维)

    传输原理:光的全反射

    特点:通信容量非常大;传输损耗小,中继距离长;抗雷和电磁干扰性能好;保密性好,也不易被窃听或截取数据;体积小重量轻;价格昂贵,安装麻烦。

2.4 非导引型传输媒体(无线传输)

  • 电磁波

    特点:频率高、频带范围宽、通信信道的容量大;信号所受工业干扰较小、传播质量高,通信比较稳定;不受地理环境的影响,建设投资少,见效快;但隐蔽性和保密性较差。

  • 卫星通信

    特点:通信距离远且通信费用与通信距离无关,但传播时延较大,技术比较复杂,价格较贵。

2.5 信道复用技术(重点!!!)

​ 复用(multiplexing):即信道共享,使若干个彼此独立的信号能在同一个信道上传输。

​ 常见的几种信道复用技术:频分复用,时分复用,波分复用,码分复用。

  • 频分复用FDM(Frequency Division Multiplexing):为不同的用户分配不同的频带。

    特点:所有用户在相同的时间占用不同的带宽资源。

    频分复用使不同的用户在相同的时间按照不同的频率在同一信道上传输信息;

    是最简单的一种复用方式,技术成熟,应用广泛。

  • 时分复用TDM(Time Division Multiplexing):将时间划分为一段段等长的时分复用帧(TDM帧),每个时分复用的用户在每一个TDM帧中占用固定序号的时隙。

    特点:所有用户在不同的时间占用同样的频带宽度。

    每一个用户所占用的时隙周期性地出现(其周期就是TDM帧的长度);

    TDM信号也称为等时信号;

    相比频分复用,时分复用更有利于数字信号的传输。

    统计时分复用STDM(Statistic TDM)是一种改进的时分复用,它能明显地提高信道的利用率。集中器常使用这种统计时分复用。

    复用技术 用户 时间 频率/波长
    FDM 不同 相同 不同频率
    TDM 不同 不同 相同频率
    STDM 不同 相同 相同频率
    WDM 不同 相同 不同波长
  • 波分复用WDM(Wavelength Division Multiplexing):光频上的频分复用技术。

  • 码分复用CDM(Code Division Multiplexing)或码分多址CDMA(Code Division Multiple Access):每个用户在相同的时间使用相同的频带进行通信,但各个用户使用经过挑选的不同码型,从而使得各用户之间可以进行独立的通信。

    特点:多个用户可以在同一时间使用同样的频带进行通信。

    码分复用CDMA广泛用于移动通信,特别是无线局域网;

    采用CDMA可以提高通信的话音质量和数据传输的可靠性;

    减少干扰对通信的影响,增大通信系统的容量,降低手机的平均发射功率。

2.6 带宽接入技术

​ 有线带宽接入——ADSL技术和FTTx技术。

  • ADSL技术:非对称数字用户线ADSL技术是用数字技术对现有的模拟电话用户线进行改造,时期能够承载带宽业务的一种技术。
  • 光纤同轴混合网HFC:是在目前覆盖面很广的有线电视网的基础上开发的一种居民带宽接入网。
  • FTTH技术:光纤到户技术。

第三章 数据链路层

透明地传输帧。

​ 数据链路层的作用就是将网络层的数据封装成帧(交给物理层)发送到链路上;或者把(从物理层中)接收到的帧中的IP数据报取出并交给网络层。

3.1 数据链路层使用信道的类型

  • 点对点信道:使用一对一的点对点通信方式;
  • 广播信道:使用一对多的广播通信方式。

3.2 使用点对点信道的数据链路层

  • 链路:是指从一个结点到相邻结点的一段物理线路(有线或无线),而中间没有任何其他的交换结点。

  • 数据链路:通信协议加上物理通道(使用网络适配器实现这些网络协议)。

  • 帧:点对点协议定义在点对点信道上的传输的数据单元;

    IP数据报(数据报,分组或包):是网络层协议数据单元。

  • 点对点的数据链路层的三个步骤:发送、传输和接收,主要解决封装成帧、透明传输和差错检测三个问题。

3.3 封装成帧

​ 将IP数据报的前后分别添加首部和尾部,构成一个成帧,以便于接收端能够在物理层的比特流中知道帧的开始和结束,即进行帧定界。

  • 控制字符SOH(Start Of Header):用来表示帧的首部开始;

  • 控制字符EOT(Eed Of Transmission):用来表示帧的结束。

  • 首部和尾部也要添加许多控制信息,链路层协议规定了所能传送的帧的数据部分长度上限,最大传送单元——MTU(MTU默认是1500字节)。

3.4 透明传输

​ 不管所传数据是什么呀的比特组合,都应当能够在链路上传送。

  • 透明传输的概念(不需要关心信息部分的比特组合)

    • 当传送的帧使用文本文件组成的帧时(文本文件中的字符都是从键盘上输入的),其数据部分不会出现SOH和EOT这样的帧定界控制字符;

    • 从键盘上输入的字符都可以放在帧中传输过去,也就是说所传输的数据链路层没有任何阻挡,接收方所收到的数据和发送方发送的数据没有任何差别,数据链路层对其传输的数据帧是完全透明的,这样的传输就是透明传输。

  • 透明传输的原理(采用转义字符进行转义)

    • 发送端:数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码时1B),数据当中出现转义字符,在转义字符前面插入一个转义字符。

    • 接收端:在数据送往网络层之前从删除插入的转义字符,当接收端收到连续的两个转义字符时,就删除其中最前面的一个。

    • 这种方法称为字节填充或字符填充。

3.5 差错检测

​ 通信双发在发送和接受数据包的过程中出现的数据错误,一般是指在传输过程中产生的比特差错

  • 比特差错:比特在传输过程中可能会产生差错,1可能会变成0,而0也可能变成1。

  • 误码率BER(Bit Error Rate):在一段时间内,传输错误的比特所占传输比特总数的比率称为误码率。误码率与信噪比有很大的关系,如果提高信噪比,就可以减小误码率。

  • 循环冗余检验CRC(Cyclic Redundancy Check)原理

    • 在发送端,先把数据划分为组,在嘉定每组k个比特;
    • 在M的后面在添加供差错检测用的n为冗余码。
  • 循环冗余检验计算步骤

    • 用二进制的模2运算进行2^n乘M的运算,相当于在M的后面添加n个0,这作为被除数(n=p-1);
    • 除数p(也就是多项式的系数);
    • 模2除运算;
    • 商是Q,余数即n为冗余码(位数不够,前补0);
    • 计算出实际发送的数据是:2^n*M+R,一共是(K+n)位。

    小贴士:

    检查得到的余数R,若R=0,则无错接受;若R≠0,则有错放弃。

  • 帧检验序列FCS(Frame Check Sequence)

    • FCS是添加在数据后面的冗余码;
    • FCS可以用CRC这种方法得出,但CRC并非用来获得FCE的唯一方法。

    注意:接收端通过CRC检验接收的帧本身是接近于100%无比特差错的;

    但通过了CRC检验的传输也并非可靠传输,因为对于帧重复、帧失序、帧丢失没有检验作用。

3.6 点对点协议PPP(Point-to-Point Protocol)

​ PPP协议是计算机和ISP进行通信时所使用的数据链路层协议。

  • PPP协议的特点

    IETF认为PPP协议应满足的需求:
    1)简单

    2)封装成帧

    3)透明性

    4)支持多种网络协议

    5)支持多种类型数据链路

    6)具有差错检测功能

    7)能够检测连接状态

    8)定义最大传输单元

    9)网络层地址协商

    10)数据压缩协商

  • PPP协议的组成

    • 一个将IP数据报封装到串行链路的方法;
    • 一个用来建立、配置和测试数据链路连接的链路控制协议LCP;
    • 一套网络控制协议NCP(每个协议用来支持不同的网络层协议)。
  • PPP协议的帧格式

    F为标志字段,表示一个帧的开始或者结束;

    A为地址字段,规定为0xFF;

    C为控制字段,规定为0x03;

    协议字段区分信息部分的内容;

    信息部分的长度可变,不超过1500字节;

    FCS字段表示的是帧检验序列。

  • PPP中的字节填充法

    当PPP用在异步传输(字节传输)时,使用字节填充法。

    在传输的过程中,为防止数据部分出现帧定界符,使得接收方误以为收到的数据提前结束,所以采用转义字符的方法,将在数据部分出现的控制字符前插入转义字符,在接收方的数据链路层将插入的转义字符删除。

  • PPP中的零比特填充法

    当PPP用在同步传输时,PPP协议采用零比特填充法实现透明传输。

    在发送端,只要发现有5个连续1,则立即填入一个0;接收端对帧中的比特流进行扫描,每当发现5个连续1时,就将这5个连续1后的一个0删除。

  • PPP协议的工作状态

3.7 使用广播信道的数据链路层

​ 广播信道可以进行一对多的通信,我们主要讨论局域网的数据链路层。

  • 局域网

    概念:局域网LAN(Local Area Network)为一个单位所拥有,且地理范围和站点数目均有限。

    特点:能进行广播或组播;高传输速率;低误码率;高可靠性和可用性;较低的时延。

    四种典型的拓扑结构:星型、环型、总线型、树型。

  • 信道划分

    • 静态划分信道:频分复用、时分复用、波分复用、码分复用;
    • 动态媒体接入控制(多点接入)
      • 随机接入:所有的用户可随机地发送信息;
      • 受控接入:用户不能随机地发送信息而必须服从一定的控制。
  • 通信适配器

    通信适配器(Adapter)又称为网络接口板或网络接口卡NIC(Network Interface Card)或网卡。

    适配器的重要功能:

    1. 保存硬件地址;

    2. 在计算机的操作系统安装设备驱动程序;

    3. 实现以太网协议;

    4. 进行串行/并行转换;

    5. 对数据进行缓存;

    6. 接收、发送帧。

计算机通过适配器和局域网进行通信

3.8 CSMA/CD协议

​ CSMA/CD(载波监听多点接入/碰撞检测)

​ 协议的实质是“载波监听”和“碰撞监测”。

  • 多点接入

    这是总线型网络,许多计算机以多点接入的方式连接在一根总线上。

  • 载波监听(发送之前先监听,也就是检测信道)

    • 先听再说;
    • 发送前先监听总线上是否有信号;
    • 如有,则停止发送数据(避免冲突),同时继续监听,直至发现信道空闲时,发送数据。

    注意:

    不管发送前还是发送中,每个站都必须不停地检测信道。

  • 碰撞监测(边发送边监听)

    • 边说边听;
    • 边发送,边监测,是否与别人发送冲突,若冲突,立即停止发送,随机延迟后再去“载波监听”。

    小贴士:

    1. 一个站点最长在发送信息之后的一个往返时间(即两本的端到端的传播时延)内才能收到碰撞信号,所以一个站点在发送信号的一端时间内,是不确定是否会遭遇碰撞的,而这段不确定是否会发生碰撞的时间称为争用期(或碰撞窗口);

    2. 经过2t时间没有检测到冲突,name本次的发送就不会发生冲突;

    3. 进行截断二进制指数退避算法,随机延迟后,继续载波监听;

    4. 路线越长,这种冲突的概率越大。

3.9 以太网的MAC协议

  • 硬件地址

    又称为物理地址或MAC地址(因为这种地址是在MAC帧中)。

    硬件地址其实不算严格意义上的地址,因为并没有指明具体位置,硬件地址是适配器唯一编号,用来唯一的标识每台电脑上的适配器。

  • MAC地址的格式

    共64位(6字节),前三字节由管理全球硬件地址的机构——注册管理机构RA向适配器制造公司出售称为组织唯一标识符OUI(Organizationally Unique Identifier),后三字节由制造公司自行分配,称为扩展标识符(Extended identifier)。

    MAC地址实际上就是适配器地址或适配器标识符EUI-48。

  • MAC帧

    目的地址和源地址指的是硬件地址,都是6个字节;

    类型字段用来标志上层使用的是什么协议,以便把收到的MAC帧的数据上交给上一层的这个协议;

    数据字段的正式命名是MAC客户数据字段,最小长度64字节+18字节的首部和尾部=数据字段的最小长度;

    FCS帧检验序列,使用CRC检验;

    前同步码是为了使适配器的时钟与比特流达成同步。

    注意:

    对于检查出的无效MAC帧就简单地丢弃,以太网不负责重传丢弃的帧。

3.10 扩展的以太网

  • 在物理层进行扩展

    • 优点:使原属于不同碰撞域的局域网上的计算机能够进行跨碰撞域的通信;扩大局域网覆盖的地理范围;
    • 缺点:碰撞域增大,总的吞吐量并未提高;如不同的碰撞域使用不同的数据率,就不能用集线器互连。
  • 在数据链路层进行扩展——透明网桥

    它根据MAC帧的目的地址对收到的帧进行转发,网桥具有过滤帧的功能。

    • 网桥的作用:连接碰撞域、过滤通信量

    • 网桥的内部结构:站表、缓存、接口

    • 网桥的兼容性:可以支持点对点链路

    • 透明网桥?

      “透明”是指局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网络对各站来说是看不见的;透明网桥是一种即插即用的设备。

      • 自学习原理

        若从A发出的帧从接口x进入了某网桥,那么从这个接口出发沿相反方向一定可把一个帧传送到A;网桥每收到一个帧,就记下其源地址和进入网桥的接口,作为转发表中的一个项目;在建立转发表时把帧首部中的源地址写在“地址”这一栏的下面。

      • 转发原理

        在转发帧时,则是根据收到的帧首部中的目的地址来转发的,这是就把在“地址”栏下面已经记下的源地址当做目的地址,而把记下的进入接口当做转发接口。

      网桥收到帧后:

      1. 先进行自学习。查找转发表中与收到帧的源地址有无相匹配的项目。如果没有,就在转发表中增加一个项目(源地址、进入的接口和时间);如果有,则把原有的项目进行更新。

      2. 再转发帧。查找转发表中与收到帧的目的地址有无相匹配的项目。

        如果没有,则通过所有其他接口(但进入网桥的接口除外)进行转发;如果有,则比对该项目的接口与帧进入网桥的接口是否相同,如果不同,则按转发表中给出的接口进行转发;如相同,丢弃这个帧(过滤帧)。

    • 网桥的优点

      过滤通信量;扩大了物理范围;提高了可靠性;可互连不同的物理层、不同的MAC子层和不同速率的局域网。

    • 网桥的缺点

      存储转发增加了时延;在MAC子层并没有流量控制功能;具有不同MAC子层的网桥接在一起时时延更大;广播风暴。

    • 网桥和集线器的区别

      • 集线器在转发帧时,不对传输媒体进行检测;
      • 网桥在转发帧之前必须执行CSMA/CD算法。若在发送过程中出现碰撞,就必须停止发送和进行退避。
  • 虚拟局域网(从逻辑功能上对以太网进行了扩展)

    虚拟局域网VLAN(Virtual Local Area Network):是由一些局域网网段构成的与物理位置无关的逻辑组。

    • 原理

      • 这些网段具有某些共同的需求;

      • 每一个VLAN的帧都有一个明确的标识符,指明发送这个帧的工作站是属于哪一个VLAN;

      • 虚拟局域网是局域网给用户提供的一种服务,而并不是一种新型局域网。

    • 虚拟局域网的帧格式

      虚拟局域网协议允许在以太网的帧格式中插入一个4字节的标识符,称为VLAN标记(tag),用来指明发送该帧的工作站属于哪一个虚拟局域网。

    • 虚拟局域网的优点

      • 为网络管理带来了遍历,具有相似需求的用户共享同一个VLAN;
      • 增强网络的安全性,敏感用户与普通用户隔离;
      • 减少了不必要的网络流量;
      • 限制了广播报文的洪泛,抑制广播风暴;
      • 减少网络拓扑变更的成本。
  • 高速以太网(从速率上对以太网进行了扩展)

    速率达到或超过100Mb/s的以太网称为高速以太网。

    在双绞线上传送100Mb/s基带信号的星型拓扑以太网。

    • 特点:

      • 可在全双工方式下工作而无冲突发生。因此,不使用CSMA/CD协议;
      • MAC帧格式仍然是802.3标准规定的;
      • 保持最短帧长不变;
      • 帧间时间间隔从原来的9.6微秒改为现在的0.96微秒。

    小贴士:

    按速率,以太网可分为标准以太网(10Mbps),快速以太网(100Mbps),吉比特以太网(1Gbps),10吉比特以太网(10Gbps);

    网络速率扩展空间很大。

第四章 网络层

分装成数据包。

4.1 网络层提供的两种服务

​ 面向连接和无连接的传送服务。

​ 在互联网中,网络层向上只提供简单灵活的、无连接的,尽最大努力交付的数据报服务,即网络层不提供服务质量的承诺。

4.2 网际协议IP

​ 在TCP/IP体系中在网络层采用标准化协议来实现网络互联,这个协议就是网际协议IP(Internet Protocol)。

​ 实际的网络通过路由器进行互联的,使用网际协议IP,可以把互联后的网络看成一个虚拟互联网络,这种使用IP协议的虚拟网络可简称为IP网。

  • 与IP协议配套使用的三个协议:

    • 地址解析协议ARP(Address Resolution Protocol)
    • 网际控制报文协议ICMP(Internet Control Message Protocol)
    • 网际组管理协议IGMP(Internet Group Management Protocol)
  • 虚拟互联网络

    • 概念:虚拟互联网络即逻辑互联网络,忽略物理层的客观异构性,在网络层看起来好像是一个统一的网络,即互联网可以有多重异构的网络组成。
    • 网络互联的一些中间设备
      • 物理层:转发器(repeater)
      • 数据链路层:网桥或桥接器(bridge)
      • 网络层:路由器(router)
      • 网络层以上:网关(gateway)

4.3 分类的IP地址

  • 因特网的设计思路

    网络层向上只提供简单灵活、无连接、尽最大努力交付的数据报服务:路由器专注于分组转发;

    网络在发送分组时不需要先建立连接,每一个分组(即IP数据报)独立发送,与其前后的分组无关。

  • IP地址及其表示方式

    ​ IP地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的32位的标识符;

    ​ IP地址由因特网名字与号码指派公司ICANN(Internet Corporation for Assigned Names and Numbers)进行分配。

    • 分类编址:每一类地址都由两个固定长度的字段组成

      • 网络号 net-id,标志主机(或路由器)所连接到的网络;
      • 主机号 host-id,它标志该主机(或路由器)。

      两级的IP地址可以标记为:

      IP地址 ::={<网络号>,<主机号>}

      网络类别 最大可指派的网络数 第一个可指派的网络号 最后一个可指派的网络号 每个网络中最大主机数
      A类 126(2^7-2) 1 126 16777214(2^24-2)
      B类 16383(2^14-1) 128.1 191.255 65534(2^16-2)
      C类 2097151(2^21-1) 192.0.1 223.255.255 254(2^8-2)
  • IP地址的特点

    • IP地址是一种分等级的地址结构

      • 分类IP地址,对于机构只分配网络号即可;
      • 路由器仅根据目的主机所连接的网络号来转发分组,而不考虑目的主机号。
    • IP地址标志一个主机(或路由器)的一条链路的接口
      • 多归属主机(multihomed host):同时连接到两个网络上,具有两个IP地址,网络号net-id不同;
      • 一个路由器至少连接到两个网络,至少有两个不同的IP地址。
    • IP地址存在的问题:
      • IP地址空间的利用率有时很低;
      • 给每一个物理网络分配一个网络号会使路由表变得太大,因而使网络性能降低;
      • 两级的IP地址不够灵活。
    • 网络?
      • 一个网络是指具有相同网络号的主机的集合,因此用网桥或转发器连接起来的若干局域网属于同一个网络;
      • 互联网上的网络号都是平等的,与其范围大小没有关系;
      • 无名网络:两个路由器直接相连时并不分配IP地址,这两个路由器之间的网络称为无名网络,或无编号网络。
  • IP地址与硬件地址

    • 区别?

      • IP地址是网络层和以上各层使用的地址,是一种逻辑地址;

      • 硬件地址是数据链路层和物理层使用的地址。

    • 小结

      • MAC帧中的源地址和目的地址都是硬件地址,整个IP数据报在物理层被封装在数据源部分,IP地址对数据链路层不可见;
      • 数据报在路由器之间传送时,途径的路由器地址不出现在IP数据报中,当前路由器根据目的IP地址自主路由出下一路由器地址;
      • 分组每次经过路由器转发时都要将MAC的首部和尾部丢弃重新封装—变换MAC帧中的目的地址和源地址;
      • 路由器只能根据目的站的IP地址的网络号进行路由选择;
      • 在局域网的链路层,只能看到MAC帧。

4.4 ARP与RARP协议

  • 地址解析协议ARP(Address Resolution Protocol):根据已知的IP地址解析出该主机的硬件地址;

  • 逆地址协议RARP(Reverse ARP):根据硬件地址解析出该主机对应的IP地址。

  • ARP工作原理(互操作过程)

    主机ARP高速缓存:用来存放从IP地址映射硬件地址的映射表,并且动态更新(方法:新增或超时删除)这个映射表;

    新增的方法:

    通过向本局域网内所有的主机发送ARP请求分组,在得到响应分组后便将这个目的主机的硬件地址写入ARP高速缓存中

    同时,ARP高速缓存中对每个硬件地址都设置了生存时间,超过生存时间的硬件地址便进行删除操作,便于进行动态更新,防止出现发送到错误(过时的)硬件地址处。

    1. 每个主机都会在自己的 ARP 缓冲区中建立一个 ARP 列表,以表示 IP 地址和 MAC 地址之间的对应关系。
    2. 主机(网络接口)新加入网络时(也可能只是mac地址发生变化,接口重启等), 会发送免费ARP报文把自己IP地址与Mac地址的映射关系广播给其他主机。
    3. 网络上的主机接收到免费ARP报文时,会更新自己的ARP缓冲区。将新的映射关系更新到自己的ARP表中。
    4. 某个主机需要发送报文时,首先检查 ARP 列表中是否有对应 IP 地址的目的主机的 MAC 地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送 ARP 数据包,该数据包包括的内容有:源主机 IP 地址,源主机 MAC 地址,目的主机的 IP 地址等。
    5. 当本网络的所有主机收到该 ARP 数据包时:

    ​ (A)首先检查数据包中的 IP 地址是否是自己的 IP 地址,如果不是,则忽略该数据包。

    ​ (B)如果是,则首先从数据包中取出源主机的 IP 和 MAC 地址写入到 ARP 列表中,如果已经存在,则覆盖。

    ​ (C) 然后将自己的 MAC 地址写入 ARP 响应包中,告诉源主机自己是它想要找的 MAC 地址。

    ​ 6.源主机收到 ARP 响应包后。将目的主机的 IP 和 MAC 地址写入 ARP 列表,并利用此信息发送数据。如果源主机一直没有收到 ARP 响应数据包,表示 ARP 查询失败。

  • ARP工作范围

    • ARP解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题,网络之间的路由并不能做到;
    • ARP的解析过程对主机的用户是透明的;
    • 从硬件地址到IP地址的解析每次转发分组时都要重复进行,但这种开销是不可避免的,是为方便的在各种异构网络之间进行转发工作而屏蔽网络硬件之间的异构性,从而体现出虚拟网络的含义。

  • ARP带来的问题——ARP欺骗攻击

    • 如何避免ARP攻击呢?

      • ARP地址绑定;
      • 交换机上配置访问控制协议。

4.5 IP数据报的格式

  • IP数据报的组成

    • 一个IP数据报由首部和数据两部分组成;
    • 首部又分为两部分:前一部分是固定部分,共20字节,是所有IP数据报的必备部分;后面是一些可选字段,其长度是可变的。
  • 固定部分

    1. 版本:占4位,指IP协议的版本目前的IP协议版本号为4(即IPv4);

    2. 首部长度:占4位,可表示的最大数值是15个单位(一个单位为4字节),因此IP首部长度的最大值是60字节;

    3. 区分服务:占8位,用来获得更好的服务,在旧标准中叫作服务类型,但实际上一直未被使用过;

    4. 总长度:占16位,指首部和数据之和的长度,单位为字节,因此数据报的最大长度为65535字节。总长度必须不超过最大传输单元MTU;

    5. 标识(identification):占16位,它是一个计数器,用来产生数据报的标识;

    6. 标志(flag):占3位,目前只有前两位有意义;

    7. 片偏移:占12位,较长的分组在分片后某片在原分组中的相对位置,片偏移以8个字节为偏移单位;

    8. 生存时间:8位,记为TTL(Time To Live),数据报在网络中可通过的路由器数的最大值;

    9. 协议:8位,该字段指出此数据报携带的数据使用何种协议以便目的主机的IP层将数据上交给具体的处理过程,协议包括本层其他协议以及高层协议;

    10. 首部检验和:16位,该字段质检验数据报的首部,不检验数据部分,这里不采用CRC检验码而采用简单的计算方法;

    11. 源地址和目的地址都各占4字节;

  • 可选字段

    • IP首部分可变部分是选项字段,用来支持排错、测量以及安全等措施,内容很丰富;
    • 选项字段的长度可变,从1个字节到40个字节不等,取决于所选择的项目;
    • 增加首部的可选部分是为了增加IP数据报的功能,也使得IP数据报的首部长度成为可变的;
    • 实际上谢谢选项很少被使用。

4.6 划分子网

  • 基本思想

    IP地址由二级地址变成三级地址,从主机号借用若干位作为子网号(subnet-id),而主机号(host-id)相应的减少相同的位数:

    IP地址 ::= {<网络号>,<子网号>,<主机号>}
    

  • 划分子网后的分组转发

    • 凡是从其他网络发送给本单位某个主机的IP数据报,仍然是根据IP数据报的目的网络号(net-id),先找到连接在本单位网络上的路由器;
    • 然后此路由器在收到IP数据报后,再按目的网络号(net-id)和子网号(subnet-id)找到目的子网;
    • 最后就将IP数据报直接交付给目的主机。
  • 子网掩码

    • 概述:子网掩码(subnet mask)是一种用来指明一个IP地址的哪些为标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。

    • 工作过程:将32位的子网掩码与IP地址进行二进制形式的按位逻辑“与”运算得到的便是网络地址,将子网掩码二进制按位取反,然后IP地址进行二进制的逻辑“与”运算,得到的就是主机地址。

      注意:

      规定默认的子网掩码网络号字段全为“1”,主机号字段全为“0”。

    • 子网掩码的四个应用

4.7 分组转发算法

  • 查找路由表(确定下一跳路由器,到最后一个路由器直接交付)

    • IP数据报最终一定可以找到目的主机所在目录的网络上的路由器(可能要通过多次的简介交付);
    • 只有到达最后一个路由器时,才试图向目的主机进行直接交付;
  • 特定路由

    • 这种路由为特定的目的主机指明一个路由;
    • 采用特定主机路由可使网络管理人员能更方便地控制网络和测试网络,同时也可在需要考虑某种安全问题时采用这种特定主机路由。
  • 默认路由(减少路由表所占用的空间和搜索路由表所用的时间)

    • 路由器还可采用默认路由减少路由表所占用的空间和搜索路由表所用的时间;
    • 这种转发方式在一个网络只有很少的对外连接时是很有用的;
    • 如果一个主机连接在一个小网络上,而这个网络只用一个路由器和因特网连接,那么在这种情况下使用默认路由是非常合适的。
  • 分组转发流程(依据目的IP,查找路由表,确定下一跳路由器)

    (1)从数据包的首部提取目的主机的IP地址D,得出目的网络地址为N。
    (2)若N就是与此路由器直接相连的某个网络地址,则进行直接交付,不需要再经过其它的路由器,直接把数据包交付目的主机(这里包括把目的主机地址D转换为具体的硬件地址,把数据包封装为MAC帧,再发送此帧);否则就是间接交付,执行(3)
    (3)若路由表中有目的地址为D的特定主机路由,则把数据包传送给路由表中所指明的下一跳路由器;否则,执行(4)
    (4)若路由表中有到达网络N的路由,则把数据包传送给路由表中所指明的下一跳路由器;否则,执行(5)
    (5)若路由表中有一个默认路由,则把数据包传送给路由表中所指明的默认路由器;否则,执行(6)
    (6)报告转发分组出错。

4.8 CIDR(构造超网)

​ 无分类域间路由选择CIDR(Classless Inter-Domain Routing)。

  • CIDR的主要特点

    • CIDR消除了传统的A类、B类、C类地址以及划分子网的概念,因而可以更加有效地分配IPv4的地址空间;

    • CIDR使用各种长度的“网络前缀”(network-prefix)来代替分类地址中的网络号和子网号;

    • CIDR使IP地址从三级编址又回到了两级编址,但这已经是无分类的两级编址:

      IP地址 ::= {<网络前缀>,<主机号>}
      
  • CIDR的记法

    • CIDR使用“斜线记法”(slash notation),它又称为CIDR记法,即在IP地址后面加上一个斜线"/",然后写上网络前缀所占的位数。

      例如:已知一个IP地址128.14.36.7/20,就表示其前20位是网络前缀,网络前缀后12位是主机号。

      注意:斜线记法中,斜线后面的数字就是地址掩码中1的个数。

    • 简化记法:

      • 地址块 10.0.0.0/10 可简写为 10/10,也就是把点分十进制中低位连续的0省略;
      • 网络前缀的后面加一个星号“”表示方法:0000101000表示在“*”之前是网络前缀,而星号表示IP地址中的主机号,可以是任意值。
  • 路由聚合(路由表的一个项目聚合了多个分类的网络地址)

    • 一个CIDR地址块可以包括多个传统的分类地址,这种地址的聚合常称为路由聚合,使得路由表中的一个项目可以表示多个传统分类地址的路由;
    • CIDR虽然不使用子网,但仍然使用“掩码”这一名词,可称之为地址掩码(address mask)。地址掩码由一串0和一串1组成,1的个数就是网络前缀的长度。

    小贴士:

    求最大地址和最小地址时,首先忽略网络前缀,计算出主机号的位数,令主机号全为0表示最小地址,主机号全为1表示最大地址。

  • 构成超网(supernetting)

    路由聚合也称构成超网。

    前缀长度不超过23位的CIDR地址块都包含了多个C类地址,构成了超网,网络前缀越短,其超级网络规模就越大。

  • CIDR地址下的分组转发(查找过程类似,但需要用到最长前缀匹配)

    • 使用CIDR时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成,在查找路由表时可能会得到不止一个匹配结果;
    • 网络前缀越长,其地址块就越小,因而路由就越具体;
    • 应当从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配(Longest-prefix matching);
    • 最长前缀匹配又称为最长匹配或最佳匹配。

4.9 ICMP报文及应用

​ 网际控制报文协议ICMP(Internet Control Message Protocol):是IP不可缺少的部分,所有的IP软件必须实现ICMP协议,ICMP可以分担IP的一部分功能。

  • ICMP报文的种类

    • ICMP差错报告报文(四种)

      IP层的差错检测机制用于检测传输错误的头部检验。

      • 终点不可达(目的站不可达):当路由器检测到数据包无法传递到目的地时,向创建数据报的源主机发出目的地不可达报文;

        不可达的分类:网络不通(如路由器故障),目的主机连不通(没开机),协议不可达,端口不可达

      • 时间超时:一种是路由器把数据包的生存时间减至零时,路由器丢弃数据报,并向源主机发送超时报文;另一种是一个数据包的所有段到达前,重组计时到点,接收主机也会向源主机发送超时报文;

      • 参数问题:数据报头部的标志出现差错或缺少必须的选项;

      • 改变路由(重定向):当一个源主机创建的数据包发至某路由器,该路由器发现数据包应该选择其他路由,则向源主机发送改变路由报文;改变路由的报文能指出网络或特定主机的变化,一般发生在一个网络连接多路由器的情况下。

    • ICMP询问报文(两种)

      • 回送请求和回答:可对任一台主机的ICMP软件发请求/应答报文;
      • 地址掩码请求和回答:主机启动时,会广播一个地址掩码请求报文。路由器收到地址掩码请求报文后,回送一个包含本网使用的32位地址掩码的应答报文;
      • 时间戳请求和回答:主机发出查询当前时间的请求,应答报文建议值是自午夜开始计算的毫秒数。

  • ICMP主要特征

    • 像一个更高层的协议一样使用IP(即ICMP消息被封装在IP数据报中),然而,ICMP是IP的一个组成部分,并且所有IP模块都必须实现它;
    • 用来报告错误,是一个差错报告机制。源站把差错交给一个应用程序或采用其他措施来纠正问题;
    • 不能用来报告ICMP消息的错误,这样就避免了无限循环,当ICMP查询消息时通过发送ICMP来响应;
    • 对于被分片的数据报,ICMP消息只发送关于第一个分片中的错误;
    • 不响应源地址为0,环回地址(Loopback Address)、广播地址或组播地址广播或组播目的地址的数据报时。
  • ICMP数据包的两级封装

    每个ICMP报文放在IP数据包的数据部分中通过互联网传递,而IP数据包本身放在帧的数据部分通过物理网络传递。

  • ICMP的应用

    • ping:程序利用ICMP协议报来侦测另一个主机是否可达;
    • Tracert:是路由跟踪实用程序,用于确定IP数据包访问目标所采取的路径;
    • Path MTU测试:用来测试链路上能够使报文转发不分片的最大MTU值,确定源到目的路径MTU对提高传输效率是非常必要的。
  • ICMP安全性

    • ICMP协议对于网络安全具有及其重要的意义。ICMP协议本身的特点决定了它非常容易被用于攻击网络上的路由器和主机
    • 两大类型
      • Ping of Death:利用操作系统规定的ICMP数据报最大尺寸不超过64KB这一规定,向主机发起“Ping of Death”攻击,如果ICMP数据报的尺寸超过64KB上限时,主机就会出现内存分配错误,导致TCP/IP堆栈崩溃,致使主机死亡;
      • ICMP洪水攻击:程序发送数据报的速度达到了每秒1000个以上,它的邢志就成了洪水生产器。

4.10 RIP协议

  • 协议

    • 自治系统AS(Autonomous System):在单一的技术管理下的一组路由器;
    • 内部网关协议IGP(Interior Gateway Protocol):在一个自治系统内部使用的路由选择协议,如RIP何OSPF协议;
    • 外部网关协议EGP(External Gateway Protocol):数据报传到一个自治系统的边界时,就需要使用的协议。
  • RIP工作原理(基于距离向量)

    • 路由信息协议RIP(Routing Information Protocol)是一种分布式的基于距离向量的路由选择协议;
    • RIP协议要求网络中的每一个路由器都要维护从它自己到其他的每一个目的网络的距离记录;
    • RIP认为一个好的路由就是它通过的路由器的数目少,即“距离短”;
    • RIP允许一条路径最多只能包含15个路由器;
    • “距离”的最大值为16时即相当于不可达。可见RIP只适用于小型互联网;
    • RIP选择一个具有最少路由器的路由(即最短路由),哪怕还存在另一条高速(低时延)但路由器较多的路由。
  • 距离

    • 从一个路由器到直接连接的网络的距离定义为1;
    • 从一个路由器到非直接连接的网络的距离定义为该路径上所经过的路由器个数;
    • 这里的距离实际上指得是“跳数”。
  • RIP报文格式

  • RIP向量算法流程

  • RIP优缺点

    • RIP协议最大的优点就是实现简单,开销较小,但是坏消息传的慢;
    • 限制了网络的规模,他能使用的最大距离为15(16不可达);
    • 路由器之间交换的路由信息是路由器汇总的完整路由表,因而随着网络规模的扩大,开销也就增加。

第五章 运输层

为主机的应用进程提供端到端的逻辑通信服务。

5.1 运输层协议概述。

  • 运输层协议

    • 用来解决进程之间的通信问题,属于面向通信部分的最高层;
    • 运输层还要对从网络层收到的数据进行差错检测(IP数据包中的首部中的检验和字段只是对首部进行检查,并不对数据部分进行检查)。
  • 运输层协议和网络层协议的主要区别

  • 运输层的作用(为主机的应用进程提供端到端的逻辑通信服务)

    • 两个主机进行通信实际上就是两个主机中的应用进程互相通信。应用进程之间的通信又称为端到端的通信;
    • 在TCP/IP体系中,运输层的任务就是为主机的应用进程提供端到端的逻辑通信服务;
    • 提供流控制机制和差错控制;
    • 复用和分用:应用层不同进程的报文通过不同的端口向下交到运输层,共用网络层提供服务。
  • 运输层的两个协议

    • 用户数据报协议UDP(User Datagram Protocol):向应用层提供无连接的数据报交付服务;

    • 传输控制协议TCP(Transmission Control Protocol):向应用层提供面向连接的可靠的数据流服务。

  • 端口

    • 概述

      • 端口是指软件端口,是应用层的各种协议进程与运输实体进行层间交互的一种地址;

      • 把每台机器上的进程看做是一系列抽象的目的点,称为协议端口(protocol port);

      • 协议端口是一个16bit的正整数标识;

      • 本地的操作系统提供一个接口机制,进程通过它来指定并接入到协议端口。

    • 端口的分配

      • 统一分配:中央管理机构统一分配的服务器端端口号的列表,固定端口;
      • 动态绑定:应用程序需要使用端口时临时指定一个端口,通信双方使用请求与应答方式知道对方的端口号。

    • 端口的使用

      端口的数据管理:每一端口有一缓冲区来存放进出该端口的数据队列。

5.2 UDP协议及应用

  • UDP工作原理

    是一种无连接的运输层协议,提供简单不可靠的信息传送服务;

    UDP不提供数据包分组、组装,不能对数据包进行排序,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。

  • UDP主要功能

    增加了对给定主机上的多个目的进程进行区别和对数据区内容进行校验的能力。

  • UDP报文的封装关系

  • UDP报文组成格式

  • UDP协议的特点

    • 无连接:即发送数据之前不需要建立连接,消耗资源小,处理速度快;
    • 尽最大努力交付:即不保证可靠交付,同时也不使用拥塞控制,适合多媒体通信的要求;
    • 面向报文:支持一对一、一对多、多对一和多对多的交互通信;
    • 在网络质量较差的环境下,数据包丢失比较严重;
    • UDP首部开销小:只有8个字节,比TCP的20个字节的首部要短;
    • 支持多播和广播。
  • UDP的应用

    视频传输(视频会议)、实时通信(IP电话)、ICQ和QQ

5.3 TCP协议及应用

  • TCP特点

    • 面向连接的运输层协议;
    • 点对点连接;
    • 可靠交付;
    • 提供全双工通信;
    • 面向字节流(UDP面向数据包)。
  • TCP协议的连接

  • TCP协议的端点

    TCP协议的端点不是主机,不是主机的IP地址,不是应用进程,也不是运输层的协议端口,而是套接字(socket)或插口。

    插口拼接到IP地址即构成了套接字:

    套接字 socket = (IP地址:端口号)
    

    每一条TCP连接唯一地被通信两端的两个套接字所确定,即:

    TCP连接::={socket1,socket2}={(IP1:PORT1),(ip2:port2)}
    
  • TCP协议的通信方式

    • 每一条TCP连接只能有两个端点,进行点对点(一对一)通信;
    • TCP提供可高交付的服务;
    • TCP提供全双工通信。

5.4 可靠传输的工作原理

TCP在不可靠传输的网络层之上提供可靠传输的服务,必须采取相关的措施。

  • 停止等待协议(依靠自动重传请求)

    停止等待就是每发送完一个分组就停止发送,等待对方的确认。在收到确认后再发送下一个分组。

  • 停止等待协议优缺点

    优点是简单,缺点是信道利用率太低,所以要对他进行改进(连续ARQ协议)。

  • 连续ARQ协议

    • 发送窗口:发送窗口内的数据可连续的发送出去,而不需要等到对方的确认,从而提高信道的利用率;
    • 滑动窗口:发送方每收到一个接收确认,就将发送窗口向前滑动一个字节的位置;
    • 接收方采用积累确认的方式(对有序的几个分组只确认最后一个分组),TCP的滑动窗口是以字节为单位的;
    • 依然存在Go-Back-N现象。

5.5 TCP报文段的首部格式

  1. 源端口和目的端口字段:各占2字节,端口时运输层与应用层的服务接口,运输层的复用和分用功能都要通过端口才能实现;

    1. 序号字段seq:占4字节。TCP连接中传送的数据流中的每一个字节都能编上一个序号,序号字段的值则指的是本报文段所发送的数据的第一个字节的序号;
    2. 确认号字段ack:占4字节,是期望收到对方的下一个报文段的数据的第一个字节的序号;
    3. 数据偏移(即首部长度):占4位,它指出TCP报文段的数据起始处距离TCP报文段的起始处有多远。“数据偏移”的单位是32位字(以4字节为计算单位);
    4. 保留字段:占6位,保留为今后使用,但目前应置为0;
    5. 紧急URG:当URG=1时,表明紧急指针字段有效,它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据);
    6. 确认ACK:只有当ACK=1时确认号才有效,当ACK=0时,确认号无效;
    7. 推送PSH(PuSH):接收TCP收到PSH=1的报文段,就尽快地交付接收应用进程,而不再等到整个缓存都填满了后再向上交付;
    8. 复位RST(ReSeT):当RST=1时,表明TCP连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接;
    9. 同步SYN:同步SYN=1表示这是一个连接请求或连接接受报文;
    10. 终止FIN(FINis):用来释放一个连接,FIN=1表明此报文段的发送端的数据已发送完毕,并要求释放运输连接;
    11. 窗口字段:占2字节,用来让对方设置发送窗口的依据,单位为字节;
    12. 检验和:占2字节,检验和字段检验的范围包括首部和数据这两部分,在计算检验和时,要在TCP报文段的前面加上12字节的伪首部;
    13. 紧急指针字段:占16位,指出在本报文段中紧急数据共有多少个字节(紧急数据放在本报文段数据的最前面);
    14. 选项字段:长度可变,TCP最初只规定了一种选项,即最大报文段长度MSS,MSS告诉对方TCP:“我的缓存所能接收的报文段的数据字段的最大长度是MSS个字节”。MSS是TCP报文段中的数据字段的最大长度,数据字段加上TCP首部才等于整个的TCP报文段;
    15. 填充字段:这是为了是整个首部长度是4字节的整数倍。

5.6 TCP可靠传输的实现

  • 两个窗口、序号

    TCP连接的每一端都必须设有两个窗口——一个发送窗口和一个接收窗口;

    TCP的可靠传输机制用字节的序号进行控制,TCP所有的确认都是基于序号而不是基于报文段;

    TCP两端的四个窗口经常处于动态变化之中。

  • 以字节为单位的滑动窗口——连续ARQ协议

    • 发送窗口:发送窗口的数据的可连续的发送出去,而不需要等待对方的确认(从而提高信道利用率);
    • 滑动窗口:发送方每收到一个接收确认,就将发送窗口的向前滑动一个字节的位置;
    • 接收方采用累积确认的方式(对有序的几个分组只确认最后一个分组);
    • TCP的滑动窗口是以字节为单位的。
  • TCP建立连接——三次握手

    ​ B端被动打开自己的TCP响应,A端主动打开。

    1. 第一次握手:建立连接时,客户端A向服务器B发出请求,并将自己的SYN位(同步位)设为1,seq(序号)设置为x(表示从字节x开始发送);
    2. 第二次握手:服务器B发出响应,并将自己的SYN设为1(表示确认收到客户端的信息,同时自己也发送一个SYN包),确认ACK设为1(表示确认位是有效的),B的序号seq设为y(表示从字节y开始发送),确认号ack设为x+1(表示期望A下一次发送的数据是从字节x+1开始的);
    3. 第三次握手:A对B进行响应,表明信息已收到,并将自己的确认ACK设为1(发送确认包),序号设为x+1(表示从字节x+1开始发送),确认号ack设为y+1(期望B下一次发送的数据是从y+1为开始的)。
  • TCP释放连接——四次挥手

    1. A端发出释放连接的报文并且停止发送数据,将终止FIN设为1,序号seq设为u;
    2. B端收到连接释放的报文,发出确认报文,并将确认ACK设为1,序号seq设为v,确认号ack设为u+1;
    3. B端发出释放连接的报文并且停止发送数据,将终止FIN设为1,确认ACK设为1,序号seq设为w,确认号ack设为u+1;
    4. A端收到信息并响应,统一释放掉B在A端的TCP连接,并将确认ACK设为1,序号seq设为u+1,确认号ack设为w+1。

5.7 流量控制和拥塞控制

  • 流量控制原理

    • 流量控制(Flow control)就是让发送方的发送速率不要太快,既要让接收方来得及接收,也不要使网络发生拥塞;
    • 利用滑动窗口机制可以很方便地在TCP连接上实现流量控制;
    • 运用TCP报文段中的窗口大小字段来控制,发送发的发送窗口不能大于接收方发回的窗口大小。

    小贴士:

    流量控制往往是指点对点通信量的控制。

  • 拥塞控制

    ​ 只能缓解拥塞,不能从根本上上解决拥塞。

    • 概念

      就是防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不至过载,它是一个全局性的过程。

    • 作用

      减轻拥塞程度,降低丢包率。

  • 拥塞控制算法原理

    • 发送方位置一个叫做拥塞窗口cwnd的状态变量;
    • 拥塞窗口的大小取决于网络的拥塞程度,并且动态地在变化;
    • 发送方控制拥塞窗口的原则是:若网络没有出现拥塞,增大拥塞窗口,把更多的分组发送出去;若网络出现拥塞,减小拥塞窗口,减少注入到网络中的分组数。
  • 拥塞控制算法

    • 慢开始:开始的慢(1),增长的快(呈指数形式的增长)

      • 慢开始门限:为了方式拥塞窗口cwnd增长过大引起网络拥塞,还需要设置一个慢开始门限ssthresh状态变量;

      • 慢开始门限的用法:

        1. 当cwnd>ssthresh时,使用慢开始算法;
        2. 当cwnd<ssthresh时,停止使用慢开始算法而改用拥塞避免算法;
        3. 当cwnd=ssthresh时,可使用慢开始算法,也可使用拥塞避免算法。
    • 拥塞避免:拥塞窗口cwnd按线性规律缓慢增长

      小贴士:

      1. 无论在慢开始阶段还是在拥塞避免阶段,只要发送方判断网络出现拥塞(其根据就是没有按时收到确认),就要把慢开始门限ssthresh设置为出现拥塞时的发送窗口值的一半(但不能小于2);
      2. 然后把拥塞窗口cwnd重新设置为1,执行慢开始算法;
      3. 这样做的目的就是要迅速减少主机发送到网络中的分组数,使得发生拥塞的路由器有足够时间把队列中积压的分组处理完毕。

    • 快重传:快重传算法首先要求接收方每收到一个失序的报文段后就立即发出重复确认,发送方只要一连收到三个重复确认就应当立即重传对方尚未收到的报文段。

    • 快恢复

      • 当发送端收到连续三个重复的确认时,就执行“乘法减小”算法,把慢开始门限ssthresh减半,但接下去不执行慢开始算法;
      • 由于发送方现在认为网络很可能没有发生拥塞,因此现在不执行慢开始算法,即拥塞窗口cwnd现在不设置为1,而是设置为慢开始门限ssthresh减半后的数值,然后开始执行拥塞避免算法(“加法算法”),使拥塞窗口缓慢地线性增大。

第六章 应用层

6.1 DNS

  • 域名(树状结构)概述

    • 任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名;

    • 因特网采用了层次树状结构的命名方法;

    • 域名的结构由标号序列组成,各标号之间用点隔开:

      ... . 三级域名 . 二级域名 . 顶级域名
      
    • 各标号分别代表不同级别的域名;

    • 域名中的标号都由英文字母和数字组成,每一个标号不超过63个字符,也不区分大小写字母;

    • DNS既不规定一个域名需要包含多少个下级域名,也不规定每一级的域名各代表什么意思;

    • 应用层软件一般直接使用的是域名而非IP地址,在网络层进行数据传输时才将域名转化为路由中使用的IP地址;

    • 互联网的域名结构是层次结构,用户通过域名服务器将域名转化为IP地址供网络层使用;

    • DNS设备设计成一个联机分布式的数据库系统,并采用客户服务器方式;

    • DNS中大部分域名都在本地进行解析,只有少数域名需要在互联网上进行解析;

    • 域名只是一个逻辑概念,并不代表计算机所在的物理地点。

    • 顶级域名(Top Level Domain)

      • 国家顶级域名nTLD:如 .cn表示中国,.us表示美国,.uk表示英国等等;
      • 通用顶级域名gTLD:如 .com表示公司企业,.net表示网络服务机构,.org表示非营利性组织,.int表示国际组织,.edu表示美国专用的教育机构,.gov美国的政府部门,.mil表示美国的军事部门等等;
      • 基础结构域名(infrastructure domain):这种顶级域名只有一个.arpa,用于反向域名解析,因此又称为反向域名。
  • 域名系统DNS(Domain Name System)

    • 许多应用层软件经常直接使用域名系统DNS,但计算机的用户只是间接而不是直接使用域名系统;
    • 因特网采用层次结构的命名数作为主机的名字,并使用分布式的域名系统DNS;
    • 名字到IP地址的解析是由若干个域名服务器程序完成的,域名服务器程序在专设的结点上运行,运行该程序的机器称为域名服务器。
  • 域名服务器(树状结构)

    • 一个服务器所负责管辖(或有权限的)范围叫做区(zone);

    • 每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射。

  • 域名服务器——根域名服务器

    • 根域名服务器时最重要的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址;
    • 不管是哪一个本地域名服务器,若要对因特网上任何一个域名进行解析,只要自己无法解析,就首先求助于根域名服务器;
    • 在因特网上共有13个不同的IP地址的根域名服务器,它们的名字使用一个英文字母命名,从a一直到m(前13个字母)。
  • 域名服务器——顶级域名服务器

    • 这些域名服务器负责管理在该顶级域名服务器注册的所有二级域名;
    • 当收到DNS查询请求时,就给出响应的回答(可能是最后的结果,也可能是下一步应当查找的域名服务器的IP地址)。
  • 域名服务器——权限域名服务器

    • 负责一个区的域名服务器;
    • 当一个权限域名服务器还不能给出最后的查询回答时,就会告诉出查询请求的DNS客户,下一步应当找哪一个权限域名服务器。
  • 域名服务器——本地域名服务器

    • 本地域名服务器对域名系统非常重要;
    • 当一个主机发出DNS查询请求时,这个查询请求报文就发送给本地域名服务器;
    • 每一个因特网服务提供者ISP,或一个大学,甚至一个大学里的西,都可以拥有一个本地域名服务器;
    • 这种域名服务器有时也称为默认域名服务器。

    小贴士:

    本地域名服务器向根域名服务器的查询通常是采用迭代查询(不替代);

    主机向本地域名服务器的查询一般都是采用递归查询(替代)。

    同时,为了提高查询效率,减少查询时的网络开销,在每级域名服务器中都采用的告诉缓来存储经常或最近被查询的到的域名对应的IP地址。

6.2 FTP

  • FTP概述

    FTP(File Transfer Protocol)是文件传送协议的简称,源自于ARPANET,主要用于在Internet中传输文件,使运行在任何操作系统的计算机都可以在Internet上接收和发送文件。

  • FTP的原理(两个TCP连接)

    • 采用C/S工作模式,一个FTP服务器进程由一个主进程和若干个从属进程组成,可同时为多个客户进程提供服务;

    • 消除不同操作系统下的文件系统的不兼容性;

    • 实现文件传送的基本服务;

    • 使用TCP可靠传输协议;

    • 主进程和从属进程是并发执行的。

  • FTP的工作步骤(主程序与从属进程的处理并发进行)

    • 服务器主程序打开熟知端口(端口号为21);
    • 等待客户进程发出连接请求;
    • 启动从属进程处理客户进程请求;
    • 回到等待状态,继续接收其他客户进程请求。
  • FTP的工作模式

    • 主动模式(PORT):客户端侦听,服务器发起连接;

    • 被动模式(PASV):服务器侦听,客户端发起连接。

      小贴士:

      在数据传送过程中,启动两个从属进程:控制进程和数据传送进程;其中控制进程用来传送数据传送过程中产生的控制信息;数据传送进程传送数据;用时建立两条连接:控制连接(21号端口)和数据传送连接(20号端口)

  • TFTP

    简单文件传送协议TFTP(Trivial File Transfer Protocol);使用UDP数据报进行传送;只支持传输不支持交互;

    主要特点:

    1)每次传送的报文大小为512字节,(最后一个报文可不足512字节),并在最后一个字节中设置结束服标志;

    2)数据报文进行编号;(从1开始)

    3)支持ASCII 码或二进制传送

    4)可对文件进行读或写;

    5)使用简单的首部

    6)每次发送完一个UDP之后要进行确认。

6.3 WWW

  • 万维网概述

    • 万维网WWW(World Wide Web)是一个大规模的、联机式的信息储藏所;
    • 万维网是分布式超媒体(hypermedia)系统,是超文本(hypertext)系统的扩充;
    • 万维网使用连接的方法进行站点之间的访问;
    • 万维网使用超文本传输协议HTTP进行文档传输工作;
    • 万维网使用超文本标记语言HTML描述万维网页面;
    • 在一个客户程序主窗口中显示的万维网文档称为页面;
    • 万维网以客户服务期的方式工作:客户向服务器发出访问请求,然后服务器将万维网文档发送给客户端,客户端即运行在主机中的浏览器。
  • 万维网的原理(C/S模式)

    • 万维网采用C/S方式工作;
    • 浏览器就是在用户计算机上的万维网客户程序。万维网文档所驻留的计算机则运行服务器程序,因此这个计算机也称为万维网服务器;
    • 客户程序向服务器程序发出请求,服务器程序向客户程序送回客户所要的万维网文档。
  • 万维网文档

    • 静态文档:超文本标语言HTML
    • 动态万维网文档:CGI(Common Gateway Interface)
    • 活动万维网文档:程序在客户端运行
  • URL

    • 原理:统一资源定位符URL(Uniform Resource Locator)相当于一个文件名在网络范围的扩展,是对因特网上资源位置和访问方法的一种简洁的表示;

    • 组成:

      <协议>://<主机>:<端口>/<路径>
      
      • 协议:
      1. ftp——文件传送协议FTP;
      2. http——超文本传送协议HTTP;
      3. News——USENET新闻。
      • 主机:是存放资源的主机在因特网中的域名
      • 端口和路径:可省略
  • 超文本传送协议HTTP

    • HTTP(HyperText Transfer Protocol)是用于从WWW服务器传输超文本到本地浏览器的传送协议:浏览网页;
    • 面向事务(transaction-oriented)——请求与响应;
    • C/S工作方式;
    • HTTP协议是无状态的。
  • 搜索引擎(search engine)

    • 全文检索搜索引擎:通过搜索软件在因特网上的各网站上收集信息,并按照一定的规则建立在线数据库供用户查询
    • 分类目录搜索引擎:并不采用集网站的任何信息,而是将个网站向搜索引擎提交的网站信息时填写的关键词和网站描述等信息,输入分类目录的数据库,供网上用户查询。

6.4 电子邮件

  • 概述

    • 电子邮件是一种用电子手段提供信息交换的通信方式,是互联网应用最广的服务;

    • 可以是文字、图像、声音等多种形式。

  • 邮箱系统的组成

    • 用户代理:

      • 用户代理:用户与电子邮件系统的接口;
      • 在大多数星狂下它就是运行在用户PC机中的一个程序(电子邮件客户端);
      • 一般具有撰写、显示、处理、通信等功能。
    • 电子邮件服务器:

      • 发送和接收邮件,向发信人报告邮件传送的情况(已交付、被拒绝、丢失等);
      • 邮件服务器按照C/S方式工作;
      • 邮件服务器需要使用发送和读取两个不同的协议。

      注意:

      一个邮件服务器既可以作为客户,也可以作为服务器。

  • 电子邮件协议

    • 简单邮件传送协议SMTP(Simple Mail Transfer Protocol):主要负责底层的邮件系统如何将邮件从一台及其传至另外一台机器,我们通常把处理用户SMTP请求的服务器称为SMTP服务器(邮件发送服务器);

      SMTP不使用中间的邮件服务器。

    • 邮局协议POP(Post Office Protocol):版本为POP3,POP3是把邮件从电子邮箱中传输到本地计算机的协议,我们通常把处理用户POP3请求的服务器称之为POP3服务器(邮件接收服务器);

    • 网际报文存取协议IMAP(Internet Message Access Protocol):版本为IMAP4,是POP3的一种替代协议,提供了邮件检索和邮件处理的新功能。

  • 电子邮件优缺点

    • 优点

      • 速度快
      • 一信多发;
      • 内容丰富;
      • 无纸张,环保
    • 缺点
      • 安全性(病毒、盗号)
      • 依赖网络

第七章 网络安全

7.1 计算机网络的安全性威胁

  • 网络安全威胁

    • 截获——从网络上窃听他人的通信内容
    • 中断——有意中断他人在网络上的通信
    • 篡改——故意篡改网络上传送的报文
    • 伪造——伪造信息在网络上传送
  • 两中攻击

    • 主动攻击:更改信息和拒绝用户使用资源的攻击

      攻击者对某个连接中通过的PDU进行各种处理。

    • 被动攻击:截获信息的攻击

      攻击者只是观察和分析某一个协议数据单元PDU而不干扰信息流。

  • 恶意程序

    • 计算机病毒(Computer Virtus):是编制者在计算机中插入的破坏计算机功能或者数据的代码,能影响计算机使用,能自我复制的一组计算机指令或者程序代码。
    • 计算机蠕虫病毒:是自包含的程序(或是一套程序),它能传播自身功能的拷贝或自身的某些部分到其他计算机系统中,不需要将其自身附着到诉诸程序。
    • 特洛伊木马:伪装成一个使用工具、一个可爱的游戏、图片、软件,诱惑用户将其安装在PC端或者服务器上,暗中打开端口,向指定地点发送数据。
    • 逻辑炸弹:是在特定逻辑条件满足时,实施破坏的计算机程序,改程序出发后造成计算机数据丢失、计算机不能从硬盘或软盘引导,甚至会使整个系统瘫痪,并出现物理损坏的虚假现象。
    • 后门入侵
    • 流氓软件

7.2 对称秘钥密码体制和非对称秘钥密码体制

  • 数据加密技术概述

    • 数据加密技术是最基本的安全技术,被誉为信息安全的核心;
    • 通过变换和置换等各种方法将被保护信息(明文)置换成密文,然后再进行信息的存储或传输;
    • 保密性直接取决于所采用的的密码算法和秘钥长度。
  • 数据加密技术分类

    • 对称秘钥密码体制——数据加密和解密采用的都是同一个秘钥,因而其安全性依赖于所持有的秘钥的安全性
    • 非对称秘钥密码体制——使用不同的加密密匙与解密密匙;
  • 优缺点

    • 优点

      • 加密和解密速度快;
      • 加密强度高;
      • 算法公开
    • 缺点
      • 实现秘钥的秘密分发困难,在大量用户的情况下秘钥管理复杂;
      • 无法完成身份认证等功能,不便于应用在网络开放的环境中。

7.3 数字签名

  • 概述:数字签名又称公钥数字签名、电子签章等,是一种类似卸载纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。

  • 数字签名的流程

  • 数字签名作用

    • 报文鉴别——接受者能够合适发送者对报文的签名
    • 报文的完整性——发送者事后不能抵赖对报文的签名
    • 不可否认——接受者不能伪造对报文的签名

7.3 安全协议和防火墙

  • 安全协议

    • 应用层安全协议——PGP(Pretty Good Privacy)是一个完整的电子邮件安全软件包,包括加密、鉴别、电子签名和压缩等技术。
    • 运输层安全协议——SSL、TLS等。
    • 网络层安全协议——Ipsec(Internet Protocol Security)是一个协议包,通过对IP协议的分组进行加密和认证来保护IP协议的网络传输协议族。
  • 防火墙

    • 定义

      • 是一个由软件和硬件设备组合而成、在内部网和外部网之间、专用网与公共网之间的边界上构造的保护屏障;
      • 防火墙是系统的第一道防线,起作用是防止非法用户的进入
    • 防火墙的位置:内外网之间
    • 防火墙的功能
      • 防火墙按照系统管理员预先定义好的规则来控制数据报的进出;
      • 功能有两个:组织或允许某种类型的通信量通过防火墙;
      • 抗DDos攻击
    • 防火墙的分类
      • 网络层防火墙:可视为一种IP数据报过滤器,允许在网络层,以枚举的方式,只允许符合特定规则的封包通过;
      • 应用层防火墙:在TCP/IP堆栈的应用层上运行,可以拦截进出某应用程序的所有封包,并且封锁其他的封包;
        有意中断他人在网络上的通信
    • 篡改——故意篡改网络上传送的报文
    • 伪造——伪造信息在网络上传送
  • 两中攻击

    • 主动攻击:更改信息和拒绝用户使用资源的攻击

      攻击者对某个连接中通过的PDU进行各种处理。

    • 被动攻击:截获信息的攻击

      攻击者只是观察和分析某一个协议数据单元PDU而不干扰信息流。

  • 恶意程序

    • 计算机病毒(Computer Virtus):是编制者在计算机中插入的破坏计算机功能或者数据的代码,能影响计算机使用,能自我复制的一组计算机指令或者程序代码。
    • 计算机蠕虫病毒:是自包含的程序(或是一套程序),它能传播自身功能的拷贝或自身的某些部分到其他计算机系统中,不需要将其自身附着到诉诸程序。
    • 特洛伊木马:伪装成一个使用工具、一个可爱的游戏、图片、软件,诱惑用户将其安装在PC端或者服务器上,暗中打开端口,向指定地点发送数据。
    • 逻辑炸弹:是在特定逻辑条件满足时,实施破坏的计算机程序,改程序出发后造成计算机数据丢失、计算机不能从硬盘或软盘引导,甚至会使整个系统瘫痪,并出现物理损坏的虚假现象。
    • 后门入侵
    • 流氓软件

7.2 对称秘钥密码体制和非对称秘钥密码体制

  • 数据加密技术概述

    • 数据加密技术是最基本的安全技术,被誉为信息安全的核心;
    • 通过变换和置换等各种方法将被保护信息(明文)置换成密文,然后再进行信息的存储或传输;
    • 保密性直接取决于所采用的的密码算法和秘钥长度。
  • 数据加密技术分类

    • 对称秘钥密码体制——数据加密和解密采用的都是同一个秘钥,因而其安全性依赖于所持有的秘钥的安全性
    • 非对称秘钥密码体制——使用不同的加密密匙与解密密匙;
  • 优缺点

    • 优点

      • 加密和解密速度快;
      • 加密强度高;
      • 算法公开
    • 缺点
      • 实现秘钥的秘密分发困难,在大量用户的情况下秘钥管理复杂;
      • 无法完成身份认证等功能,不便于应用在网络开放的环境中。

7.3 数字签名

  • 概述:数字签名又称公钥数字签名、电子签章等,是一种类似卸载纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。

  • 数字签名的流程

    [外链图片转存中…(img-MWS5pTea-1624275310426)]

  • 数字签名作用

    • 报文鉴别——接受者能够合适发送者对报文的签名
    • 报文的完整性——发送者事后不能抵赖对报文的签名
    • 不可否认——接受者不能伪造对报文的签名

7.3 安全协议和防火墙

  • 安全协议

    • 应用层安全协议——PGP(Pretty Good Privacy)是一个完整的电子邮件安全软件包,包括加密、鉴别、电子签名和压缩等技术。
    • 运输层安全协议——SSL、TLS等。
    • 网络层安全协议——Ipsec(Internet Protocol Security)是一个协议包,通过对IP协议的分组进行加密和认证来保护IP协议的网络传输协议族。
  • 防火墙

    • 定义

      • 是一个由软件和硬件设备组合而成、在内部网和外部网之间、专用网与公共网之间的边界上构造的保护屏障;
      • 防火墙是系统的第一道防线,起作用是防止非法用户的进入
    • 防火墙的位置:内外网之间
    • 防火墙的功能
      • 防火墙按照系统管理员预先定义好的规则来控制数据报的进出;
      • 功能有两个:组织或允许某种类型的通信量通过防火墙;
      • 抗DDos攻击
    • 防火墙的分类
      • 网络层防火墙:可视为一种IP数据报过滤器,允许在网络层,以枚举的方式,只允许符合特定规则的封包通过;
      • 应用层防火墙:在TCP/IP堆栈的应用层上运行,可以拦截进出某应用程序的所有封包,并且封锁其他的封包;
      • 数据库防火墙:基于数据库协议分析与控制技术的数据安全防护系统。

计算机网络知识点概括相关推荐

  1. 计算机网络知识点总结(第六版,谢希仁)

    计算机网络知识点总结 1.三网:现如今最重要的三种网络 电信网络(电话网) 有线电视网络(电视网) 计算机网络(发展最快,信息时代的核心技术,连通性,共享) 1.1. 计算机网络的定义:是指将地理位置 ...

  2. 计算机网络知识点补充

    计算机网络知识点补充 目录: 1. HTTP和HTTPS的区别 http协议是运行在tcp之上,明文传输,客户端和服务器端都无法验证对方的身份:https是运行在ssl(Secure Socket L ...

  3. 计算机网络知识点整理---应用层(六)

    本文章是根据B站的王道计算机考研-计算机网络进行整理 *建议使用电脑观看 计算机网络知识点整理-概述(一) 计算机网络知识点整理-物理层(二) 计算机网络知识点整理-数据链路层 (上)(三) 计算机网 ...

  4. 计算机网络知识点全面总结(一篇全懂)

    一.计算机网络概述 1.1 计算机网络的分类 按照网络的作用范围:广域网(WAN).城域网(MAN).局域网(LAN):按照网络使用者:公用网络.专用网络. 1.2 计算机网络的层次结构 ​TCP/I ...

  5. 2021研面准备 -- 计算机网络知识点整理(一)概述

    参考教材为<计算机网络>(第7版)-- 谢希仁,电子版 pdf 下载链接:点击下载,提取码:s4jp 文章目录 第一章 概述 一.计算机网络的概念和发展 二.计算机网络的组成 三.计算机网 ...

  6. 计算机网络知识点总结周报

    2020/06/07 计算机网络知识点总结周报 1.IPV4地址类型 0.0.0.0-127.255.255.255 128.0.0.0-191.255.255.255 192.0.0.0-223.2 ...

  7. 几计算机网络特,计算机网络知识点(2010级)

    计算机网络知识点 第一章 概述 1.网络的组成 答:"三网"是指电信网络.有线电视网络和计算机网络. 2.因特网与网络的区别和联系 答:因特网则把许多网络连接在一起,网络把许多计算 ...

  8. 高级计算机网络 知识点总结

    高级计算机网络知识点总结 一.引言 一.OSI七层模型 OSI定义了网络互连的七层框架(物理层.数据链路层.网络层.传输层.会话层.表示层.应用层),即ISO开放互连系统参考模型. 每一层实现各自的功 ...

  9. DATA2001 期末知识点概括Week 2 - Week 12

    DATA2001 期末知识点概括 文章目录 DATA2001 期末知识点概括 前言 Week 2 Data Cleaning and Exploration with Python 2.1 Level ...

最新文章

  1. 智慧城市:物联网安全需先行
  2. 设计模式——工厂方法模式和抽象工厂模式
  3. CV与IP:基础,经典以及最近发展
  4. 宝骏530中控屏怎么安装软件_试驾2020款宝骏530:大屏加六座,就这么直接
  5. SpringBoot 自带工具类~ObjectUtils
  6. 一起学习C语言:C语言循环结构(二)
  7. docker jenkins 公钥_搭建 Jenkins 与 GitLab 的持续集成环境
  8. Netty工作笔记0067---Netty编解码机制简述
  9. 机器学习 —— 极大似然估计与条件概率
  10. linux分区分错了能改么,linux 分区错误怎么处理
  11. maven的基本用法
  12. c语言文本编辑器源代码_程序员专属的10个免费编程文本编辑器,哪个是你的最爱?...
  13. linux修复硬盘文件命令,fsck命令_Linux fsck 命令用法详解:检查并且试图修复文件系统中的错误...
  14. 单片机、ARM与DSP对比
  15. 8bit/10bit线路编码简介
  16. 35岁的程序员:第44章,宿命
  17. TiDB2.1 报错statement count 5001 exceeds the transaction limitation, autocommit = false
  18. 奥西400服务器维修,奥西tds400驱动
  19. java graphics2d 画圆_java Graphics2D 画图
  20. 单核CPU与多核CPU工作原理

热门文章

  1. mac系统如何修改网卡mac地址
  2. Debezium实战-第7章 其它-Debezium UI
  3. 中国医科大学2021年12月《五官科护理学》作业考核试题
  4. 漫说从打工者到企业家的蜕变过程所碰到的问题及解决方案
  5. springboot整合阿里云视频点播服务Vod——实现视频上传、删除、播放
  6. 2020最后一天 || 时间相关单光子计数技术的原理和优点
  7. 视频截帧:javacv实现视频截帧功能
  8. Windows各版本官方原版系统下载
  9. SQL Server over()
  10. BasicRF学习心得