计算机网络期末复习——简明扼要介绍考点及相关知识

  • 期末复习的方法论:一般来说,期末复习都是“理论”结合“实践”。

    理论,在于要对期末考点有基本的把握。可以询问老师或者师兄,总之要知道考试的重点在哪里。对照教材,勾画考试重点,删去不重要的琐碎知识点。有针对性的复习,就期末考试而言,不考的可以暂时不去理会。

    实践,就应付考试而言,就是刷题,背题。在对考察内容有基本了解以后,就可以开始刷题。短期来看,刷题比继续学习有更高的时间效率。通过刷题,你会更理解某一部分知识点的重点在哪里。通过试题,你也可以理解抽象的概念是如何在具体的事物中起作用的。一般网上的刷题网站还是挺多的,比如考试宝之类的,没有题目可刷可以上去看看。但是首先还是把老师平时给的作业题刷过一遍,在做其他的

  • 计算机网络概述

    • 计算机网络分类

      • 1.广域网WAN,城域网MAN,局域网LAN,

    • 计算机网络的工作方式

      • 边缘部分:由所有连接在互联网上的主机组成,用来进行通信和资源共享

      • 核心部分:由大量的网络和连接网络的路由器组成,为边缘部分提供连通性和交换服务

        • 路由器——实现分组交换的关键构件

        • 两种信息交换方式:
          • 电路交换

          • 分组交换

    • 计算机网络基本概念

      • 协议

        • 控制两个对等实体进行通信的规则

      • 专业术语

        • 服务数据单元SDU

        • 协议控制信息PCI

        • 接口控制信息ICI

        • 协议数据单元PDU

    • 计算机网络的层次结构(请熟记基本结构体系的层数和各层的上下关系)

      • OSI(7层)

        • 以5层协议为参考,应用层+表示层+会话层;

      • TCP/IP(4层)

        • 以5层协议为参考,网络层==>网际层;数据链路层+物理层==>网络接口层

      • 教材叙述的5层协议体系结构

        • 应用层

          • 任务:提供系统与用户的接口

        • 运输层

          • 任务:负责两个主机进程间的通信

          • 相关协议:TCP,UDP,ARQ

        • 网络层

          • 任务:①将运输层传下来的报文封装成分组;②选择合适的路由,使运输层传下来的分组转发到目的主机

          • 相关协议:ICMP,ARP,RARP,IP,IGMP

        • 数据链路层

          • 任务:将网络层传下来的IP数据报封装成帧

        • 物理层

          • 透明地传输比特流

    • 性能指标的计算(重点,会考,请自行搜索一下题来练习)

      • 时延:数据从网络的一端到另一端所需的时间

        • 发送时延:节点在发送数据时时数据块从节点进入到传输介质所需要的事件

        • 传播时延:电磁波在信道上传播一定距离所需要的时间

        • 处理时延

        • 排队时延

      • 往返时间RTT

      • 利用率

      • 时延带宽积:收到对方响应之前所能发送的数据量

    • 习题与真题复习(我自己做题时,记录的几个感觉有意义的,零散知识点)

      • 需要注意的几个知识点

        • 1.传播时延=信道长度/传播速率

        • 2.网络体系提供标准语言,界面,增加功能间的独立性;但是具体的实现由工作人员完成

        • 3.分类方法:①广播式网络,点对点网络;②广域网、局域网、城域网

        • 4.分类:资源子网、通信子网

          • 资源子网:有计算机系统,终端。终端控制器、各种软件资源和信息资源组成;

          • 通信子网(只有物理层、数据链路层和网络层)有通信线路和其他通信设备组成,负责完成网络数据传输、转发等通信处理任务

        • 5.传输单位:物理层——比特;数据链路层——帧;网络层——数据报;传输层——报文段

        • 6.传输设备:物理层——hub集线器;数据链路层——以太网交换机;网络层——路由器

        • 7.局域网与广播网的差异——使用协议不同;覆盖范围不同

        • 8.广播式网络没有网络层

        • 9.网络层提供的服务——无连接、不可靠的服务

        • 10.表示层的功能——数据格式转换

  • 物理层

    • 通信的基本方式

      • 单工通信

      • 半双工通信

      • 全双工通信

    • 信号的类型

      • 基带信号:数字信号直接用不同电压表示,再传送到数字信道上传输

      • 宽带信号:数字信号调后形成模拟信号,再传送到模拟信道上传输

        • 调制解调技术

      • 编码

        • 曼彻斯特编码(重点)

          • 每一位开始都有跳变。位开始有跳变是0,没有则是1(自含时钟编码)

    • 基本原理

      • 奈奎斯特定理

        • 采样定理

          • 在带宽为W的低通信道中,码元传输的最高速率是2W

        • 奈奎斯特定理(请熟记奈奎斯特定理和香农定理的信息传输速率公式

          • 给出了在假定理想情况下,避免码间串扰,码元传输速率的上限

          • C=2flog2N,f即采样频率

      • 香农定理

        • 在带宽受限且有高斯白噪声的情况下,无差错传输的极限信息传输速率

    • 数据传输方式(重点,请理解这几种传输方式的区别)

      • 电路交换

        • 面向连接;传输时延小;线路利用率低

      • 报文交换

      • 分组交换

        • 数据报

            • 1.无需连接

            • 2.不独占一条链路,资源利用率高

            • 2.不保证可靠性;

        • 虚电路

          • 要求在发送数据前,在源主机和目的主机之间建立一条虚链接。一旦虚连接建立以后,用户发送的数据将通过该路径按顺序传送到目的主机

    • 传输方式

      • 数据传输

        • 串行传输——距离长,速度慢

        • 并行传输——距离短,速度快

      • 通信方式相关概念

        • 同步传输:以数据块(帧)为传输单位,每个数据块开始加一个帧头,结束加一个帧尾。传输效率接近100%

        • 异步传输:以字节为传输单位,每一字节增加一个起始位和终止位;传输效率为80%

    • 物理层接口特性

      • 机械特性:指明接口的形状,尺寸等

      • 电气特性——与电压、电路相关

      • 功能特性——信号线的用途

      • 规程特性——时序关系

    • 物理层设备的功能

      • 放大器——用于模拟信号;让信号传得更远

      • 中继器——用于数字信号,让信号传得更远

      • 集线器:多端口的中继器

        • 收到信号好,从除了输入端口外的所有端口广播出去

    • 多路复用

      • 时分多路复用

        • 统计时分复用

        • 同步时分复用

      • 频分多路复用

        • 主要作用:结合来自多条线路的传输,提高线路的使用率

      • 码分复用CDMA(计算方法)

        • 用发送端每个站的码片序列依次对混合信号进行规格化内积(对应位相乘再相加):
          •结果为+1,说明这个站发送比特1
          •结果为-1,说明这个站发送比特0
          •结果为0,说明这个站没有发送信息

        • 例题:
          共有4个站进行码分多址CDMA通信,4个站的码片序列为:
          A:(-1 -1 -1 +1 +1 -1 +1 +1) B:(-1 -1 +1 -1 +1 +1 +1 -1)
          C:(-1 +1 -1 +1 +1 +1 -1 -1) D:(-1 +1 -1 -1 -1 -1 +1 -1)
          现收到这样的码片序列:( +1 -3 +3 -1 +1 +1 +1 +1)
          则站点( )发送数据0
          A. A
          B. B
          C. C
          D. D

          解答:
          A:-1+3-3-1+1-1+1+1=0 表示收到的码片序列与A全部正交,那么A站点没有发送数据。
          B:1/8(-1+3+3+1+1+1+1-1)=1,表示B站发送的信息是+1。
          C:1/8(-1-3-3-1+1+1-1-1)= -1,表示C站发送的信息为0。
          D:1/8(-1-3-3+1-1-1+1-1)=-1,表示D站发送的信息为0
                                  
          例题原文链接:https://blog.csdn.net/qq_43262059/article/details/106201119

    • 习题与真题复习(我自己做题时,记录的几个感觉有意义的,零散知识点)

      • 1.香农公式的计算

      • 2.数据帧传输的计算

      • 3.波特率=比特率/n;n是一个码元包含的信息量。指每秒传送的信号或波形的变化次数

      • 4.数据取值可能数量——>一个码元所携带的信息论

      • 5.分组交换,需要时间的计算

      • 6.10Base-T表示10Mbit/s,使用数字信号,使用双绞线

      • 7.报文交换数据传输的时间计算:当一个主机通过路由器向另一个主机进行通信时,需要计算两次发送时延; 分组交换时则需要考虑:发送时延,发送时在路由器上是否需要排队

      • 奈奎斯特定理和香农定理的结合运用

  • 数据链路层

    • 数据链路层实现的基本功能

      • 链路管理——链路的建立,维持和释放

      • 帧同步

      • 差错控制

        • 数据链路层的差错传输CRC(重点)

          • 关于补零:余数位数n=p-1,p为除数位数。n即为需要对数据补0的个数

          • - 二进制除法遵循异或(相同为0 不同为1)

          • - 当被除数位数不够时要给商上0 位数够时商上1

          • CRC可以使用硬件来完成

      • 在OSI模型中,数据链路层具有流量控制,差错控制的功能;在TCP/IP模型中,这些功能交给了传输层

    • PPP协议——目前使用得最广泛的数据链路层协议

      • 组成

        • 将IP数据包封装到串行链路的方法

        • 链路控制协议LCP——用于建立、配置和测试数据链路连接,并在它们不需要是将它们释放

        • 网络控制协议NCP——其中每个协议支持不同的网络层协议,用来建立和配置不同的网络层协议

    • 数据链路层提供的服务

      • 无确认、无连接服务——适合实时通信

    • CSMA/CD原理

      • 基本概念

        • 载波监听:每一个站在发送数据之前先检测总线上是否有其他计算机在发送数据,如果有就暂时不发送数据

        • 碰撞检测:计算机变发送数据边检测信道上的信号电压大小,当检测到信道电压的摆动超过某一个门限时,就认为总线上至少有两个站同时发送数据

        • 争用期:最先发送数据帧的站,在发送数据帧后至多经过时间2τ(2倍端到端往返时延)就可以知道发送数据是否遭受碰撞。我们把2τ成为争用期。 经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发送碰撞。

        • 阻塞信号:如果判断出冲突的存在,此时应立即停止发送,并向总线上发一串阻塞信号,用以通知总线上其他各有关站点。各有关站点接受该阻塞信号后,就不再发送数据了。

        • 最短有效帧长:10Mbit/s以太网,在争用期可以发送512bit,即64字节,这意味这发送数据数若前64字节没有发生冲突,则后续的数据就不会发送冲突。也意味着凡是小于64字节的帧都是由于冲突而异常终止的无效帧。因此规定64字节为最短有效帧长

          • 进一步的理解:发送一帧的事件需要大于或等于信号沿着信道来回一趟的时间

      • 退避算法:(重点)发送碰撞的站在停止发送数据,要推迟一个随机时间才能再次发送数据。时间=2τ*r;r是从集合中随机取出的一个数,

        • 当网络负载小时,后退延时的取值范围也小;而当负载大时,后退延时的取值范围也随之增大。这种二进制后退算法考虑了网络负载对冲突的影响

    • 关于冲突域与广播域(这个要重点记一下

    • 以太网的信道利用率

      • 信道利用率的最大值

    • 以太网帧格式

      • 以太网帧头部的地址、类型域以及帧尾部的校验和域,这部分的总共长度是18B

      • MAC地址(重点,需要理解MAC地址和IP地址的功能和区别

        • MAC地址的作用

          • 在局域网中,硬件地址有被称为物理地址,或MAC地址,而所谓的地址,其实就是每一个站的“名字”或者说标识符。在接受数据的时候,我们通过确认目的地址是不是本站的标识符来核对这是否是本站的数据。

        • 与IP地址的共同点和不同点

        • 其他

    • 重要设备

      • 网卡:用来实现以太网协议的设备,主要负责实现物理层和数据链路层的功能

      • 网桥

      • 交换机

        • 对于普通的10Mbit/s的共享式以太网,若有N个用户,则每个用户占有的平均带宽只有总带宽的N分之一。但是,若使用以太网交换机时,虽然每个端口到主机的带宽还是10M,但由于一个用户在通信时是独占而不是和其他网络用户共享传输带宽,因此,每个用户仍然可以得到10M的带宽

        • 实质是多端口网桥。它通过对信息进行重新生成,并经过内部处理后转发至指定端口,具备自动寻址能力和交换能力。

        • 以太网交换机在各端口间交换数据采用直通交换方式。通常情况下,只检查数据包的包头即前14个字节,由于不需要考虑前导码,只需要检测目的地址的6B(48bit)

    • 数据帧的概念/报文格式

    • 最大传输单元

    • 习题与真题

      • HDLC数据帧——以这种方式传输数据,每连续出现5个“1”,就在后面插入一个0

      • 在HDLC中,帧被分为3类,分别为信息帧、监控帧和无编号帧。简记为“无奸细”

      • 2.在使用静态地址的系统上,如果有了重复的硬件地址,那么两个设备都不能通信。在局域网上,每个设备必须具有一个唯一的硬件地址

      • 3.当站点发送一个目的地址均不在网桥地址转发表的帧时,网桥会进行扩散传播。

      • 4.CSMA/CD适用于有线网络,而CSMA/CA则广泛用于无线局域网

  • 网络层

    • IP协议

      • IP地址及其表示方法(重点)

        • 构成:网络号+主机号

          • 点分十进制记法:将原来的32位二进制代码,每8位1组,然后每组的8位二进制转换成十进制数字。这样可以提高可读性。

        • 常用的三种类别的IP地址(小重点)

          • IP使用D类地址支撑组播。地址范围是224.0.0.0~239.255.255.255,每一个D类地址表示一组主机,但并非所有D类地址都可以作为组播地址

        • 路由器转发分组依据的是报文的IP地址

      • ARP协议(地址解析协议)
        • 从网络层使用的IP地址,解析出在数据链路层使用的硬件地址

        • 每一个主机都设有一个ARP高速缓存,里面有所在局域网上所有主机和路由器IP的地址到硬件地址的映射表。 当主机A想要给本局域网的某个主机B发生IP数据时,就现在ARP高速缓存里面查看有无主机B的IP地址

          • 如果有,就查找其对应的硬件地址,再讲此硬件地址写入MAC帧,然后通过局域网将该帧MAC帧发往此硬件地址。

          • 如果没有,ARP进程在本局域网广播发送一个ARP请求分组。收到ARP响应分组后,将得到的IP地址到硬件地址的映射写入ARP高速缓存中。

          • 如果所要找的主机和源主机不在同一个局域网中,那么就要通过ARP找到一个位于本局域网上的某个路由器的硬件地址,然后吧分组发送给这个路由器,让这个路由器把分组转发给下一个网络,剩下的工作就由下一个网络来做。

      • IPv4
        • IP数据报的格式

          • 从整体来看:首部前面是固定长度,共20字节,是所有IP数据报必须具备的,后面的是可选字段(实际很少用到)

          • 长度字段:总长度的计数单位是1B,首部长度的计数单位是4B,位偏移的计数单位是8B

        • 分组转发算法(重点理解直接交付和间接交付)

          • 路由选择分为直接交付和间接交付。当两台主机在同一物理网段内时,就使用直接交付,反之则使用间接交付。直接交付时是在同一物理网段内,不涉及路由器

          • 储存转发机制——路由器在能够开始向输出链路传输分组的第一位之间,必须接受到整个分组

        • 地址划分(重点)
          • 子网划分

            • 后来在IP地址中,把主机号host-id部分在划分出一部分作为“子网号字段”,这样的做法就叫划分子网。

          • 子网掩码

            • 由于从IP数据报无法直接判断源主机和目的主机所连接的网络是否进行了子网划分,就引入“子网掩码”的概念,找出IP地址中子网掩码部分。

              • 子网掩码的运算:将IP地址和子网掩码逐位坐与运算,就可以得到子网的网络地址。

          • CIDR(无分类域间路由选择)(重点理解IP地址的几种写法)。使用各种长度的“网络前缀”来代替地址中的网络号和子网号。

            • 名词:路由聚合(构成超网)——因为一个CIDR地址块可以表示很多的地址,这种地址的聚合就被称为路由聚合。

              • 路由聚合的好处:1.减少了路由器之间的路由选择信息的交换,提升了互联网的性能;2.由于一个地址块可以表示多个网络,减小了项目表中的数目。

              • 例子:

            • 名词:最长前缀匹配

              • 当路由器收到一个IP数据包时,它会将数据包的目的IP地址与自己本地路由表中的所有路由表进行逐位(Bit-By-Bit)对比,直到找到匹配度最长的条目,这就是最长前缀匹配机制。

      • IPv6
        • IPv6的基本首部

          • IPv6数据报的一般形式——由两部分构成:基本首部和有效载荷。其中有效载荷包括零个或多个拓展首部,在加上后面的数据部分。(基本首部40字节)

          • 拓展首部

            • IPv6把原来IPv4中选项的功能放在拓展首部,并将拓展首部交给路径两段的源站和目的站的主机来处理,而不需要路由器来处理。

        • 地址记法

          • 冒号十六进制记法

            • IPv6共128位,跟原来一样,为了便于阅读,分为8组,每一组都用十六进制来表示,各组之间用冒号分隔。例如:

            • 也可以把数字前面的0省略。例如把0000中的前三个0省略,写成1个0

            • 还有一个概念叫做“零压缩”。就是一连串的,连续的0可以为一对冒号所取代。 有两点需要注意的是: 1.在一个地址中只能使用一次零压缩。如果前面的一连串0使用零压缩了,那后面另一串0就不能再使用; 2.不管这一连串0占用了多少个分组,压缩后看起来都是一对冒号。

          • 与点份十进制记法后缀的结合

          • 还有一种写法,就是把数字前面的“0”省略;比如02AB:0035,会写成2AB:35。

      • 网络地址转换NAT技术

    • ICMP协议(网际控制报文协议)

      • ICMP报文的格式

        • 通过图我们可以看到,虽然ICMP是网络层协议,但它不想IP协议和ARP协议一样直接传递给数据链路层,而是先封装成IP数据报然后再传递给数据链路层、

      • ICMP报文的分类

        • 差错报文

        • 询问报文

      • 应用

        • 当网路出现拥塞时,ICMP采用“源抑制”的方法,即当路由器或者主机因拥塞而丢掉数据报时,它就向数据报的源主机发送源抑制报文,抑制源主机发送数据报的速率

    • 路由选择协议

      • 另一种分类:静态路由,动态路由

        • 静态路由又称非自适应的算法,它不会根据流量和结构来调整它们的路由决策。但是,用户可以随时配置路由表

        • 动态路由又称为自适应的算法,需要实时获得网络的状态,并且根据网络的状态适时地改变路由决策

        • 动态路由和静态路由选择的主要区别在于——动态路由选择需要使用路由选择协议去发现和维护路由信息,而静态路由只需要手动配置路由信息

      • 概念:分层路由——在采用分层路由之后,路由器被划分为区域,每个路由器知道如何将分组路由到自己所在的区域内的目标地址,但对于其他区域内容结构毫不知情。当不同的网络被相互连接起来的时候,可以将每个网络当作一个独立的区域,这样做的好处是一个网络中的路由器不必知道其他网络的拓扑结构

      • 内部网关协议(重点理解几种路由选择协议的特点)
        • 内部网关路由选择协议RIP协议

          • 总的来说,RIP是一种分布式的,基于距离向量的路由选择协议。通过广播UDP报文交交换路由信息。RIP会根据自己的路由表,选择一条具有最少路由器的路由。哪怕还存在另一条高速但路由器较多的路由。默认情况下,RIP使用一种非常简单的度量制度:距离就是通往目的站点所需经过的链路数,取值为0~16,16表示路径无限长

          • 路由信息协议RIP的工作原理

            • 路由表的建立:路由器在刚刚开始工作时,只知道到直接连接的网络的距离(此距离定义为1)。它的路由表是空的。 以后,每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。 经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。

            • 距离向量算法

          • RIP协议存在的问题:当网络出现故障时,要经过比较长的时间 (例如数分钟) 才能将此信息传送到所有的路由器。

            • 优缺点:(取值0~16)

        • 内部网关路由协议OSPF协议

          • 基于链路状态协议直接用IP包装封装它的数据

          • 基本要点

            • 1.概念:链路状态:就是说明本路由器与哪些路由器相邻以及该链路的“度量”的信息。

            • OSPF协议在链路状态变化是,路由器会用洪泛法相所有路由器发送信息,告知与本路由器相邻的所有路由器的链路状态。 由于各路由器频繁的交换链路状态信息,因此所有的路由器最终都能建立一个链路状态数据库。这个数据库实际上就是全网的拓扑结构图。 为了是OSPF能够用于规模很大的网络,而不会因为频繁交换信息影响网络性能,OSPF将一个自治系统划分为若干更小的范围,叫做区域。区域内部的路由器只知道本区域的完整网络拓扑,而不知道其他区域的网络拓扑情况。在这其中,又划分出主干区域,用于连接其他区域。

          • 运行OSPF协议的路由器没10s就像它的各个接口发送hello分组,接受到Hello分组的路由器就知道了邻居的存在。如果连续4次没有收到某个相邻路由器发来的Hello分组,就认为该相邻路由器不可达,应立即修改链路状态数据库,并重新计算路由

      • 外部网关协议
        • 外部网关路由协议BGP协议

          • 路径向量选择协议

          • 从整体来看,BGP是不同自治系统的路由器之间交换路由信息的协议。所交换的信息就是要到达某个网络所要经过的一些列AS。当相互交换信息后,根据所采用的策略从收到的路由信息中找出到达AS的较好路由。

          • 具体的一些细节:

            • 1.由于互联网的规模太大,自治系统之间的路由选择是十分困难的。而对于要找到自治系统之间的路由选择,要找到最佳路由更是不现实的,所以上面才说,我们是在AS之间交换“可达性”信息,找到一条能够到达目的网络且比较好的路由

            • 2.每一个自治系统会显着一个路由器作为该自治系统的“BGP发言人”,由这个BGP发言人与其他自治系统中的BGP发言人交换路由信息。

            • 3.交换路由信息的过程: 先建立 TCP 连接,然后在此连接上交换 BGP 报文以建立 BGP 会话(session),利用 BGP 会话交换路由信息。

              • 使用TCP连接交换路由信息的两个BGP发言人,彼此成为对方的邻站或对等站。

            • 4.BGP协议的特点:

              • ①BGP支持CIDR,因此,BGP的路由表也就包括目的网络前缀、下一跳路由器以及到达该目的网络所要经过的各个自治系统序列。

              • ②BGP刚刚运行时,BGP的邻站是交换整个的BGP路由表。但以后只需要在发生变化时更新有变化的部分。这样做对节省网络带宽和减少路由器的处理开销都有好处。

            • BGP用来在BGP路由器间交换网络可达性信息。它通告前往目的地的一条完整路径信息,如10。11.21.1/24可以通过AS2,AS4,AS5到达

          • BGP的实现中使用TCP来传输信息,所以BGP封装在TCP报文中

    • 路由器的构成(重点)

      • 路由器的任务和作用

        • 作用:1.连通不同的网络;2.选择信息传送的线路

        • 任务:将输入端口收到的分组,按照分组要去的目的地,把该分组从路由器的某个合适的输出端口转发给下一跳路由器。

      • 路由器的结构

        • 路由选择部分

          • 路由选择部分,也叫控制部分。它的核心构建是路由交换机。

          • 路由交换机的任务就是根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断更新和维护路由表。

          • 构成

            • 路由选择协议

            • 路由表

            • 路由选择处理器

        • 分组转发部分

          • 输入端口

            • 输出端口的处理流程:输入端口装有物理层、数据链路层和网络层的处理模块。在数据链路层剥去首部和尾部后,将分钟送到网络层的队列中排队等待处理。 网络层的输入端口处理模块有一个缓冲区。当输入链路的发送速率超过交换结构接收分组的速度时,来不及发送的分组交暂存在这个缓冲区。

          • 交换结构

            • 转发与路由的辨析:“转发”就是路由器根据转发表将用户的IP数据报从合适的端口转发出去。;“路由选择”就是根据从各路由器得到的关于网络拓扑的变化情况,动态地改变所选择的路由。

            • 三种交换方法

          • 输出端口

            • 输出端口的处理流程:输出端口从交换结构接受分组,数据链路层模块会给分组加上链路层的首部和尾部,然后交给物理层后发送到外部链路。 与输入端口类似,输出端口也有一个缓冲区。当交换结构传送的分组的速度超过输出链路的发送速率是,来不及发送的分组交暂存在这个缓冲区。 若干路由器的处理速率比不上分组进入队列的速率,那么队列的存储空间最终必然减小到0.后面再进入的分组由于没有存储空间就会被丢弃。路由器的输出或输出队列产生溢出是造成分组丢失的主要原因。

    • 虚拟专用网络VPN

      • 功能

        • 利用公用的互联网作为本机构各专用网之间的通信载体,这样的专用网又被称为“虚拟专用网VPN”

      • 工作方式

        • 部门A使用本地地址,在发送IP数据报时,也是在首部填写本地地址。但是在经过路由器时,被加密并在外面使用了全球地址。这样,就可以使用互联网进行正常通信。

    • 漫游

      • 当一个分组到达用户的本地局域网中的时候,它被转发给某一台与局域网相连的路由器。给路由器寻找目标IP主机,这时候本地代理响应该请求,并且接受该分组。然后将这些分组封装到一些新IP分组中,并将新分组发送给外部代理。外部代理将原分组分解出来后,移交给移动后的主机

    • 网络地址转换NAT

      • 这是一种在专用网上使用专用地址与互联网进行通信(但并不加密)的技术

      • 基本原理

        • 在安装NAT软件以后,路由器就可以具备网络地址转换功能。而这样的路由器也被成为NAT路由器。 当使用本地地址的主机与外界进行通信时,NAT路由器上会将其本地地址转换为全球IP地址,这样就成功实现本地地址与互联网进行通信

      • 网络地址转换过程

        • NAT 路由器将数据报的源地址 IP a 转换成全球地址 IP g ,并把转换结果记录到NAT地址转换表中,目的地址 IP b保持不变,然后发送到互联网。

        • NAT 路由器收到主机 B 发回的数据报时,知道数据报中的源地址是 IP b 而目的地址是 IP g 。

        • 根据 NAT 转换表,NAT 路由器将目的地址 IP g 转换为 IP a ,转发给最终的内部主机 A。

        • 为了更有效的利用NAT路由器上的全球IP地址,现在常用的NAT转换表还把运输层的端口号也利用上。这样就可以使多个拥有本地地址的主机,共用一个NAT路由器上的全球IP地址。

      • NAT协议保留的3段IP地址供内部使用,不允许出现在互联网上。也称私有地址

    • 习题与知识点

      • 名词:拥塞——在某段时间内,如果对网络中某一资源的需求超过了该资源提供的可用部分,网络的性能将明显变差,整个网络的吞吐量回随着网络负载的增加而不断下降

      • 2.路由器进行互连的多个局域网中,要求每个局域网物理层、数据链路层、网络层协议可以不同,但网络层以上的高层协议必须相同

      • 3.回路地址

      • 4.IP首部字段中,与分片和重组有关的字段:标识——让目的主机确定一个新到达的分段属于哪一个数据包;标志中的DF和MF,则分别表示“能够分片”“后面是否还有分片”;片偏移则是标志分片在IP数据报中的位置,重新组合分组的时候用到。

        • 数据包被分片后,每个分片都将独立地1传输到目的地,最后在目的主机被重组

      • 5.划分子网时,子网掩码——计算子网段需要多少位,主机段需要多少位,相减即可得到网络段的位数,进而得到子网掩码

      • 6.

      • 7.对于IP地址中,主机位位全“1”,的地址,代表网内广播,为广播地址

      • 8.当路由器无法转发或传送IP数据包时,向初始源点发回一个目的站不可达报文

      • 9.ipv6去掉了校验和域,不会计算头部的校验和;IPv6允许在源节点分片,不允许由报文传递路径上的路由设备进行分片

  • 传输层

    • UDP协议

      • UDP协议的基本特点

        • 1.UDP无连接的,发送数据之前不需要建立连接

        • 2.UDP是面向报文的,UDP对应用层交下来的报文,既不合并也不拆分

        • 3.UDP没有拥塞控制

        • 4.提供复用/分用服务

      • UDP的首部格式

      • 应用

        • UDP的特点是开销小,时间性能好并且容易实现。在客户/服务器模型中,它们之间的请求都很短,使用UDP编码不仅简单而且只需要很少的消息;远程调用使用UDP的理由和客户/服务器模型一样;对于实时多媒体应用来说,需要保证数据及时传送,比例不大的错误是可以容忍的,所以使用UDP也合适

        • 远程登录需要依靠一个客户端到服务器的可靠连接,使用UDP不合适

    • 端口号

      • 熟知端口:0~1024

      • 客户端端口:49152~65535

      • 套接字:对网络中不同主机上的应用进程之间进行双向通信的端点的一种抽象,由IP地址和端口号组成

    • 面向连接与面向无连接的对比

      • 面向连接

        • 优点:可靠信息流(只要接受就都是正确的),信息回复确认(每收到一个信息就发送一个回复,告诉对方已收到该信息;如果收到错误信息,告诉对方重新发送信息)

        • 缺点:占用通信信道

      • 面向无连接

        • 优缺点与之相反

    • TCP协议(重点)

      • 主要特点

        • 1.面向连接的

        • 2.提供可靠交付的服务

        • 3.提供全双工通信

        • 4.面向字节流

      • TCP的首部格式(首部字段20个字节)

        • 关于数据偏移字段:TCP报文的长度必须是4B的整数倍;数据偏移字段以4B为基本单位

      • 可靠传输的工作原理
        • 停止-等待协议

          • 1.停止-等待的基本示意图

          • 信道利用率低:

            • 计算公式:

            • 当往返时间RTT远大于分组发送时间TD时,信道的利用率就会非常低。若出现重传,这对传送有用的数据信息来说,信道的利用率还要降低。

        • 连续ARQ协议
          • 工作原理:发送方一次可以发出多个分组。每次可以发送分组的数量有滑动窗口协议来进行控制。接收方采用累积确认的方式来发送确认信息。发送方每收到一个确认,就把发送窗口向前滑动。如果出现差错,就采用回退N的方式进行重传

            • 滑动窗口协议

              • TCP连接的每一端都设有窗口——一个发送窗口和一个接受窗口。位于发送窗口内的分组都可连续发送出去,而不需要等待对方的确认。 发送发没收到一个确认,就把发送窗口向前滑动一个分组的位置。 发送窗口W的取值:1<W<2^(n-1);n为分配的给分组编号的比特数。

            • 累积确认

              • 接收方不必对收到的分组逐个发送确认信息,而是对按序到达的最后一个分组发送确认,这样就表示到这个分组为止,所有分组都已正确收到了。这就是累积确认

              • 确认丢失的情况下,就会触发超时重传,然后再得到一个确认。

            • 回退N

              • 如果发送发发送了前五个分组,而中间的第三个分组丢失了。这是接收方只能对前两个分组发出确认。发送发无法知道后面三个分组的下落,只好把后面的三个分组都在重传一个。这就叫“回退N”(Go-banck-N),标识需要再退回来重传已发送过的N个分组。

      • TCP可靠传输的实现(重点)

        • 以字节为单位的滑动窗口

          • 工作过程

            • 通过下面几张图,我们可以明白滑动窗口的工作过程

            • 通过P1,P2,P3三个指针,我们可以确定窗口的位置。

          • 缓存

            • 发送缓存用来暂时存放: 发送应用程序传送给发送方 TCP 准备发送的数据;TCP 已发送出但尚未收到确认的数据。 注意:已经发送但还没被确认的字节,仍然存放在缓存中;一旦被确认同时活动窗口离开该序号,字节就被缓存清除

            • 接收缓存用来暂时存放: 按序到达的、但尚未被接收应用程序读取的数据;不按序到达的数据。

        • 超时重传时间的选择

          • 问题的由来:由于IP数据报所选择的路由变化很大,所以运输层的往返时间RTT的方差也很大。这就导致超时重传时间确定的困难——太短,容易引起不必要的重传;太长,网络空闲时间增大,降低了传输效率。

          • 自适应算法

            • 需要考虑的问题:TCP 报文段 1 没有收到确认。重传(即报文段 2)后,收到了确认报文段 ACK。如何判定此确认报文段是对原来的报文段 1 的确认,还是对重传的报文段 2 的确认?

        • 选择确认SACK

          • 问题的提出:若收到的报文段无差错,只是为按时到达,例如:1,2,4都收到了,但是没有收到3。能否设法只传送缺少的数据而不选择重传已经正确到达接受方的数据?——解决方案:使用SACK(选择确认)

      • 流量控制(理解基本概念)
        • 流量控制:让发送方的发送速率不要太快,既要让接收方来得及接收,也不要让网络发生拥塞

        • 利用滑动窗口实现流量控制

          • 流量控制:让发送发的发送速率不要太快,既要让接收方来得及接收,也不要让网络发生拥塞

          • 流量控制通过接收方给rwnd报文段来限制发送发的发送窗口

      • TCP的拥塞控制(理解四种算法)
        • 基本概念

          • 拥塞:在某段时间,若对网络中某资源的需求超过该资源所能提供的可用部分,网络的性能就要变坏,这种现象称为拥塞

          • 拥塞控制与流量控制的区别

          • 开环控制与闭环控制

        • TCP拥塞控制方法

          • 基本原理:

          • 原则:只要网络没有出现拥塞,拥塞窗口1就可以再增大一些,以便把更多分组发送出去;但只要网络出现拥塞或可能出现拥塞,就必须把拥塞窗口减小一些,以减少注入网络中的分组数,以便环节网络出现的拥塞

          • 判断准则: 1.重传定时器超时; 2.收到三个重复的ACK(预示网络可能出现拥塞)

          • 拥塞控制算法
            • 慢开始

              • 使用慢开始算法后,每经过一个传输轮次,拥塞窗口cwnd就加倍(“慢”只是指初始的窗口比较小)

              • 慢开始门限 ssthresh 的用法如下:

              • 当 cwnd < ssthresh 时,使用慢开始算法。

              • 当 cwnd > ssthresh 时,停止使用慢开始算法而改用拥塞避免算法。

              • 当 cwnd = ssthresh 时,既可使用慢开始算法,也可使用拥塞避免算法

            • 拥塞避免算法

              • 每经过一个传输轮次,拥塞窗口就+1。目的是让拥塞窗口缓慢的增大,避免出现拥塞

            • 无论慢开始还是拥塞避免阶段,只要发送发判断网络出现拥塞(重传定时器超时),就把慢开始门限减小为当前窗口的一半,然后缩小窗口为1,最后执行慢开始算法。 

            • 快重传

              • 发送方只要一连收到三个重复确认,就知道接收方确实没有收到报文段,因而应当立即进行重传(即“快重传”),这样就不会出现超时,发送方也不就会误认为出现了网络拥塞。

            • 快恢复算法

              • 当发送端收到连续三个重复的确认时,由于发送方现在认为网络很可能没有发生拥塞,因此现在不执行慢开始算法,而是执行快恢复算法 FR (Fast Recovery) 算法: 慢开始门限 ssthresh = 当前拥塞窗口 cwnd / 2 ; 新拥塞窗口 cwnd = 慢开始门限 ssthresh ; 开始执行拥塞避免算法,使拥塞窗口缓慢地线性增大。

      • TCP三次握手

        • 连接建立

          • TCP建立连接的过程叫做握手,由于握手需要再客户和服务器之间交换三个TCP报文段,所以称为三报文握手。下面演示连接建立过程

      • TCP连接4次挥手
        • 连接释放

          • TCP连接释放的过程是四报文握手

          • 在确认报文段中ACK = 1,确认号 ack = w + 1,自己的序号 seq = u + 1

        • FIN标识位用来释放一个链接,它表示本方已经没有数据要传输了。然而,在关闭一个连接之后,对方还可以继续发送数据,所以还有可能接受到数据

    • 习题与知识点补充

      • 拥塞控制的修正:TCP报文中,当发生超时时间时,阈值被设置成当前拥塞窗口的一半,而拥塞窗口被设为一个最大报文段

      • 2.TCP将收到的报文组成字节流交给上层

      • 3.关于报文和序号。假设A.B建立连接;发送报文中,序号就是报文的序号,ack表示的是前面序号都已经收到,期望收到的下一个字段序号。假设A向B发送TCP报文段,则B回复的报文段中seq==ack,ack=seq+k;k是TCP段的有效载荷

      • 4.关于慢启动,假设阈值是6,某一个拥塞窗口是4,则下一次窗口不会变成5或8,而是变成6,之后按照拥塞避免,一个一个的增加

      • 5.以太网帧的最大负载是1500B,IP首部长度是20B,其中每片的数据字段长度为1480B

  • 应用层

    • 基本概念

    • 客户/服务器模式
      • 用户提出服务请求,网络将用户请求传送到服务器;服务器执行用户请求,完成索要求的操作并将结果送回用户。
      • 客户机的作用是根据用户的任务需求想后端服务器发出服务请求,并将服务器返回结果呈现给前端机。客户机面向用户,服务器面向任务。客户机和服务器之间通过网络来实现协同计算任务
    • P2P模式
      • 网络节点之间采取对等的方式直接交换信息的工作模式
    • DNS协议

      • DSN协议,域名解析协议,主要作用是通过请求及回答获取主机和网络相关信息。比如将域名转换成IP地址

      • 层次域名结构

        • 下面是一个域名的典型结构:通过这样层次树状的结构,使任何一个链接在互联网上的主机或路由器都有一个唯一的层次结构的名字,即域名。

          • 顶级域名TLD

            • 下面是顶级域名的一些例子

      • 域名服务器

        • 域名服务器:一个服务器所负责管辖的范围叫做区。每一个区设置相应的权限域名服务器,用来保存该区中所有主机的域名到IP地址的映射。

        • 高速缓存:每一个域名服务器都维护一个高速缓存,存放最近用过的名字以及从何处获得名字映射的记录。在查询域名的过程中,会首先从本地域名服务器的高速缓存中查找,如果能找到那就不必再去找后面的域名服务器。这样大大的减轻根域名服务的负荷,使互联网上的DNS查询请求和回答的报文的数量大为减少。

        • 根域名服务器

          • 最高层次的域名服务器。他知道所有的顶级域名服务器的域名和IP地址。 不管哪一个本地域名服务器,若要对互联网上任何一个域名进行解析,只要自己无法解析,就会受限求助于根域名服务器,

        • 顶级域名服务器

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

        • 权限域名服务器

          • 负责一个区的域名服务器

        • 本地域名服务器

          • 当一个主机发出DNS查询请求时,这个报文就先发送给本地域名服务器。

        • 域名的解析过程

          • 如果主机要查询一个域名的IP地址,它会首先询问本地域名服务器。如果本地域名服务器不知道被查询域名的IP地址,那么本地域名服务器就以DNS客户的身份,向根域名服务器发出查询请求报文。若根域名服务器也没有该主机的信息,有以下两种做法:

          • 递归查询:根域名服务器想该主机的授权域名服务器法颂DNS查询报文,查询结果在逐级返回原主机

          • 迭代查询:根域名服务器吧授权域名服务器的IP地址返回给本地域名服务器,由本地域名服务器再去查询。

          • 迭代查询,最坏情况下,需要依次迭代地向本地域名服务器,根域名服务器(.com),顶级域名服务器(xyz.com),权限域名服务器(abc.xyz.com)发出DNS查询请求

    • FTP文件传输协议

      • FTP的基本工作原理

        • 文件传送协议FTP能够屏蔽个各计算机系统的细节,适合在异构网络中任意计算机之间传送文件。而且提供交互式的访问,允许客户指明文件的类型和格式,允许文件具有存取权限,因而最后成为互联网上使用得最广泛的文件传送协议。

        • 工作原理(1):FTP使用客户服务器方式。假设两台计算机相互通信,那就是发送文件的为客户,接收文件的为服务器。FTP服务进程由两部分组成:一个主进程——负责接收新的请求;另外由若干从属进程——负责处理单个请求。

        • 工作流程

          • 一个完整的FTP工作过程需要经历连接建立,数据传输、释放连接3个阶段。其中,连接建立又分为控制连接建立和数据连接建立两个阶段。FTP客户端与FTP服务器建立连接的第一个阶段是控制连接的建立,主要用于传输FTP的各种命令。

            FTP有两种工作模式,按照它是主动发起TCP连接还是被动等待TCP连接,分为主动模式和被动模式
            • 主动模式:首先,客户会发起一条TCP连接,与FTP服务器建立间接,这条连接的作用是传送控制命令;以后,FTP服务器会在端口号20与FTP客户的另一个端口号建立连接,这一条连接的作用就是用来传送数据的。

            • 被动模式与主动模式十分相似,只不过区别在与建立传输控制命令的TCP连接后,FTP服务器被动的等待FTP客户建立传送数据的TCP连接

    • 万维网WWW

      • 万维网概述

        • 1.基本概念

          • 万维网:总的来说,它是一个大规模的、联机十的信息储藏所。就是所,它存储了许多的网页。

          • 超文本:一种电子文档的形式,其中包含了文本、图像、音频、视频等多种媒体类型和连接。超文本允许用户通过点击链接跳转到其他部分的文档或触发特定的操作。

          • HTML(超文本标记语言):一种最常见的超文本格式,用于创建网页。在HTML中,万维网页面的设计者可以很方便地用一个超链从本页面的某处链接到互联网上的任何一个万维网页面,并且能够在自己的计算机屏幕上将这些页面显示出来。

          • 搜索引擎:在万维网上查找信息的搜索引擎

      • 统一资源定位符URL
        • URL统一资源定位符:用来标志万维网上各种文档的标识符。使得每一个文档在互联网范围内具有唯一的标识符。我们平常说的网络地址就是URL

          • URL与域名概念的辨析(先不看下面的内容,你可以说出它们俩有什么区别吗?)

            • URL(统一资源定位符): URL是用于定位和标识互联网上资源的字符串。 它包含了资源的位置以及访问该资源所需的方式。URL通常由协议(如HTTP、HTTPS、FTP)、域名或IP地址、端口号(可选)、路径和查询字符串等组成。 例如:https://www.example.com/page.html 是一个URL,其中包含了HTTPS协议、域名 或主机名称www.example.com、路径 /page.html 等信息。

            • 域名: 域名是互联网上用于标识特定网站或网络资源的字符串。它通常是由一串字符组成,可以是字母、数字和连字符 - 的组合。 域名用于代表特定的网络位置,例如网站、服务器或者其他网络服务。 例如,www.example.com 是一个域名,用于标识名为“example”的顶级域名下的一个网站。

          • URL的格式

            • 一个例子:

      • 超文本传送协议HTTP
        • 在浏览器和服务器之间的请求和响应的交互,必须按照规定的格式和遵循一定的规则。这些格式和规则就是超文本传送协议HTTP

        • 工作过程

          • 每一个万维网网点都有一个服务器进程,它不断地监听TCP端口80,以便发现是否有浏览器向它发出连接建立请求。 一旦见听到连接建立请求并建立TCP连接之后,浏览器就向万维网服务器发出浏览某个页面的请求,服务器接着就返回所请求的页面作为响应。 最后,TCP连接就被释放了

          • 持续连接

            • HTTP/1.1 协议使用持续连接 (persistent connection)。万维网服务器在发送响应后仍然在一段时间内保持这条连接,使同一个客户(浏览器)和该服务器可以继续在这条连接上传送后续的 HTTP 请求报文和响应报文。

            • 两种工作方式

              • 非流水线方式:客户在收到前一个响应后才能发出下一个请求。这比非持续连接的两倍 RTT 的开销节省了建立 TCP 连接所需的一个 RTT 时间。但服务器在发送完一个对象后,其 TCP 连接就处于空闲状态,浪费了服务器资源。

              • 流水线方式:客户在收到 HTTP 的响应报文之前就能够接着发送新的请求报文。一个接一个的请求报文到达服务器后,服务器就可连续发回响应报文。使用流水线方式时,客户访问所有的对象只需花费一个 RTT时间,使 TCP 连接中的空闲时间减少,提高了下载文档效率。

        • 高速缓存

          • 万维网高速缓存把最近的一些请求和响应暂存在本地磁盘中。当与暂时存放的请求相同的新请求到达时,万维网高速缓存就把暂存的响应发送出去,而不需要按URL的地址再去互联网访问该资源

      • 万维网的文档

        • 基本概念

          • HTML定义了许多用于排版的命令(标签),HTNL把各种标签嵌入到万维网的页面中,就构成了所谓的HTML文档。

          • 仅当 HTML 文档是以 .html 或 .htm 为后缀时,浏览器才对此文档的各种标签进行解释。 如 HTML 文档改换以 .txt 为其后缀,则 HTML 解释程序就不对标签进行解释,而浏览器只能看见原来的文本文件。 当浏览器从服务器读取 HTML 文档后,就按照 HTML 文档中的各种标签,根据浏览器所使用的显示器的尺寸和分辨率大小,重新进行排版并恢复出所读取的页面。

          • 两种不同的连接

            • 远程连接:超链的终点是其他网点上的页面

            • 本地连接:超链指向本计算机中的某个文件

          • 万维网文档的两种类型

            • 静态文档:该文档创作完毕后就存放在万维网服务器中,在被用户浏览的过程中,内容不会改变。

            • 动态文档:文档的内容是在浏览器访问万维网服务器时才由应用程序动态创建。

            • 动态文档和静态文档之间的主要差别体现在服务器一端。这主要是文档内容的生成方法不同。而从浏览器的角度看,这两种文档并没有区别。

          • 活动文档:每当浏览器请求一个活动文档时,服务器就返回一段程序副本在浏览器端运行。 活动文档程序可与用户直接交互,并可连续地改变屏幕的显示。由于活动文档技术不需要服务器的连续更新传送,对网络带宽的要求也不会太高。

          • 习题与知识点

    1.辨析——域名与IP地址不是一一对应的关系:尽管DNS能够完成域名到IP地址的映射,但如果一个主机通过两个网卡连接在网络上,则具有两个IP地址,但这两个IP地址可能映射到同一个域名上。如果一个主机具有两个域名管理结构分配的域名,则这两个域名就可能拥有相同的IP地址
  • 2.FTP协议使用控制连接和数据连接,控制连接存在整个FTP会话过程中,数据连接在每次文件传输时才建立,传输结束就关闭。默认情况下FTP协议使用TCP20端口进行数据连接,TCP21端口进行控制连接。但是否使用TCP20端口建立数据连接与传输模式有关,主动方式使用TCP20端口,被动方式由服务器和客户端自行协商决定。
  • 3.FTP的数据端口号是控制端口号-1
  • 4.如果用户直接使用域名访问WWW服务器,那么第一步是完成域名解析,只要获得服务器的IP地址后,WWW浏览器才能与WWW服务器建立连接,开始后续的交互。
  • 主域名服务器运行域名服务器软件,有域名数据库;一个域名有且只有一个主域名服务器
  • 6.每一台主机都必须在授权域名服务器处注册登记,授权域名服务器一定能够将其管辖的主机名转换为该主机的IP地址

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/728612.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】深度学习赋能:基于 LSTM 的智能日志异常检测

目录 1. LSTM 简介 2. 日志序列异常检测概述 3. 数据预处理 3.1 日志解析 3.2 数据清洗 3.3 序列化 3.4 特征提取 示例代码 4. 构建 LSTM 模型 4.1 模型结构 4.2 模型构建示例 5. 训练 LSTM 模型 5.1 数据准备 5.2 模型训练 示例代码 6. 异常检测 6.1 异常分数…

QT截图程序三-截取自定义多边形

上一篇文章QT截图程序&#xff0c;可多屏幕截图二&#xff0c;增加调整截图区域功能-CSDN博客描述了如何截取&#xff0c;具备调整边缘功能后已经方便使用了&#xff0c;但是与系统自带的程序相比&#xff0c;似乎没有什么特别&#xff0c;只能截取矩形区域。 如果可以按照自己…

中欧科学家论坛暨第六届人工智能与先进制造国际会议(AIAM2024)

会议日期&#xff1a;2024年10月20-21日 会议地点&#xff1a;德国-法兰克福 会议官网&#xff1a;https://www.iaast.cn/meet/home/Bx130JiM 出版检索&#xff1a;EI、Scopus等数据库收录 【会议简介】 “中欧科学家论坛”由德国、法国、荷兰、瑞士、丹麦、意大利、西班牙…

python爬虫之selenium自动化操作

python爬虫之selenium自动化操作 需求&#xff1a;操作淘宝去掉弹窗广告搜索物品后进入百度回退又前进 selenium模块的基本使用 问题&#xff1a;selenium模块和爬虫之间具有怎样的关联? 1、便捷的获取网站中动态加载的数据 2、便捷实现模拟登录 什么是selenium模块&#x…

java连接kerberos用户认证

文章目录 一、背景二、代码2.1目录2.2配置文件application.properties2.3pom依赖2.4代码AuthProviderConfig配置类CustomConfigurationByKeytab配置类CustomConfigurationByPassword配置类TestControllerMyCallbackHandlerDummyUserDetailsService实现类LdapTest2Application启…

数据结构经典面试之数组——C#和C++篇

文章目录 1. 数组的基本概念与功能2. C#数组创建数组访问数组元素修改数组元素数组排序 3. C数组创建数组访问数组元素修改数组元素数组排序 4. 数组的实际应用与性能优化5. C#数组示例6. C数组示例总结 数组是编程中常用的数据结构之一&#xff0c;它用于存储一系列相同类型的…

算法训练营day15--110.平衡二叉树+ 257. 二叉树的所有路径+ 404.左叶子之和+222.完全二叉树的节点个数

一、110.平衡二叉树 题目链接&#xff1a;https://leetcode.cn/problems/balanced-binary-tree/ 文章讲解&#xff1a;https://programmercarl.com/0110.%E5%B9%B3%E8%A1%A1%E4%BA%8C%E5%8F%89%E6%A0%91.html 视频讲解&#xff1a;https://www.bilibili.com/video/BV1Ug411S7m…

React中的JSX应该怎么用

什么是JSX JSX Javascript XML&#xff0c;JSX是一个 JavaScript 的语法扩展。 JSX可以很好地描述 UI 应该呈现出它应有交互的本质形式并且其完全可以和JavaScript融合在一起使用。而且具有 JavaScript 的全部功能。JSX 可以生成 React “元素”。 JSX代码示例&#xff1a; …

编译原理:语法分析(语法制导翻译)、语义分析(类型检查、中间代码生成)

编译器在做语法分析的过程中&#xff0c;除了回答程序代码的语法是否合法&#xff08;LL,LR能否接收&#xff09;外&#xff0c;还需要完成后续的工作&#xff08;包括构建语法树、类型检查、中间代码生成、目标代码生成&#xff09;&#xff0c;这些后续工作一般都可以通过语法…

板凳--------第60章 SOCKET:服务器设计

60.1 迭代型和并发型服务器 1016 1.迭代型&#xff1a; 服务器每次只处理一个客户端&#xff0c;只有当完全处理完一个客户端的请求后才会去处理下一个客户端。只适用于快速处理客户端请求的场景&#xff0c;因为每个客户端都必须等待&#xff0c;直到前面所有的客户端都处理完…

10年265倍!动态展示全球第一股英伟达10年股价走势

英伟达在过去十年的股价走势展示了其在市场上的强劲表现和显著增长。自1999年上市以来&#xff0c;英伟达的股价经历了多次显著的涨幅&#xff0c;并在2024年达到了历史新高。 从2023年6月的数据来看&#xff0c;英伟达的股价为386.54美元/股&#xff0c;市值为9548亿美元。然…

redis以后台的方式启动

文章目录 1、查看redis安装的目录2、Redis以后台的方式启动3、通过客户端连接redis4、连接后&#xff0c;测试与redis的连通性 1、查看redis安装的目录 [rootlocalhost ~]# cd /usr/local/redis/ [rootlocalhost redis]# ll 总用量 112 drwxr-xr-x. 2 root root 150 12月 6…

Excel中插入的图片在不同电脑上消失的问题及解决方法

在使用Excel时插入图片&#xff0c;然后在不同电脑上打开却发现图片消失并被替换为链接地址&#xff0c;这个问题通常出现于文件中的图片路径没有正确保存或者电脑上缺少相关的图片文件。下面让我们来详细解释这个问题以及可能的解决方法。 ### 问题原因分析1. **相对路径问题…

数据结构—排序、查找、图论和字符串算法之Java实例

一&#xff1a;引言 在编程的海洋中&#xff0c;算法是程序员的灵魂之光。它们不仅指引着代码的前进方向&#xff0c;更能解决难题&#xff0c;提升效率。虽然各式各样的算法琳琅满目&#xff0c;但其中有一些却是每位程序员必定会遇到且应当深刻掌握的。本文将带您走进这些至…

从零开始学WEB前端——HTML理论讲解

有同学可能就会问&#xff1a;为什么我的创建的记事本文件名字叫“新建文本文档”而不是“新建文本文档.txt”呢&#xff1f; 这是因为.txt是后缀名&#xff0c;表示的是打开方式&#xff0c;就比如.docx后缀的都是默认用word打开&#xff0c;.xlsx的都是默认用excel打开。 常…

Linux ls-al命令实现,tree命令实现,不带缓存的文件IO(open,read,write)

shell命令 ls -al 实现 #include <43func.h> void error_check(int ret, const char *msg) {if (ret -1) {perror(msg);exit(EXIT_FAILURE);} }char get_file_type(mode_t mode) {if (S_ISREG(mode)) return -;//检查给定的文件模式&#xff08;通常是从 stat 或 lst…

【vite】define 全局常量定义

&#x1f9ed; define 说明 类型&#xff1a; Record<string, any> 定义全局常量替换方式。其中每项在开发环境下会被定义在全局&#xff0c;而在构建时被静态替换。 Vite 使用 esbuild define 来进行替换&#xff0c;因此值的表达式必须是一个包含 JSON 可序列化值&a…

WebHttpServletRequestResponse(完整知识点汇总)

额外知识点 Web核心 Web 全球广域网&#xff0c;也成为万维网&#xff08;www&#xff09;&#xff0c;可通过浏览器访问的网站 JavaWeb 使用Java技术来解决相关Web互联网领域的技术栈 JavaWeb技术栈 B/S架构&#xff1a;Browser/Server&#xff0c;即浏览器/服务器 架构模式…

海康威视-下载的录像视频浏览器播放问题

目录 1、播放异常比对 2、视频编码检查 2.1、正常视频解析 2.2、海康视频解析 2.3、比对工具 3、转码 3.1、maven依赖 3.2、实现代码 4、验证 在前面的文章&#xff08;海康威视-按时间下载录像文件_海康威视 sdk 下载录像 大小0-CSDN博客&#xff09;中&#xff0c;通…

.NET+Python量化【1】——环境部署和个人资金账户信息查询

前言&#xff1a;量化资料很少&#xff0c;.NET更少。那我就来开个先河吧~ 以下是使用QMT进行量化开发的环境部署和基础信息获取有关操作。 1、首先自己申请券商的QMT权限&#xff0c;此步骤省略。 2、登陆QMT&#xff0c;选择极简模式&#xff0c;或者独立交易模式之类的。会进…