《计算机网络》第八版——期末复习-程序员宅基地

技术标签: 软件工程  408  网络协议  计算机网络  

  • 第一章概述

  • 计算机网络的定义

      • 计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。注意:计算机网络的实质是计算机技术和通信的结合。

    • 网络通信协议:

    • 计算机之间进行通信时,必需使用一种双方都能理解的语言,这种语言称为“协议”。协议是指计算机之间通信时对传输信息内容的理解、信息表示及各种情况下的应答信号都必须遵守一个共同的约定。协议三要素:语法,语义和同步。

      • 语法:数据与控制信息的结构或格式。

      • 语义:需要发出何种控制信息,完成何种动作以及做出何种响应。

      • 同步:事件实现顺序的详细说明。

    • 网络是指“三网”,即电信网络、有线电视网络和计算机网络。

    • 为什么计算机网络要分层,解释TCP/IP各层功能和最小单位

      • 分层优点:各层之间相互独立,灵活性好,结构上可分开,易于实现与维护,有利于标准化工作。

        • 物理层: 规定了机械,电气,功能和过程。传输单位为比特

        • 数据链路层: 相邻节点的数据传输,链路建立,维护和拆除,帧同步,数据的封装与拆除,差错控制和流量控制,单位是帧

        • 网络层: 任意节点的数据传输,路由选择,阻塞控制,网际互连。单位是分组

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

        • 传输层: 端到端通信,流量控制和差错控制,单位是报文

          • 相关协议有: TCP UDP

        • 应用层: 为应用程序提供访问底层服务的能力,单位是数据

          • 相关协议有: FTP SMTP HTTP POP DNS SNMP

    • 时延(delay 或 latency)

      • 传输时延(发送时延 ) 发送数据时,数据块从结点进入到传输媒体所需要的时间。

      • 也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。

      • 传播时延 电磁波在信道中需要传播一定的距离而花费的时间。

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

      • 处理时延 交换结点为存储转发而进行一些必要的处理所花费的时间。

      • 排队时延 结点缓存队列中分组排队所经历的时延。

      • 排队时延的长短往往取决于网络中当时的通信量。

      • 数据经历的总时延就是发送时延、传播时延、处理时延和排队时延之和:

  • 第二章 物理层

    • 物理层的基本概念:物理层的主要任务描述为确定与传输媒体的接口的一些特性

      • 机械特性 指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等等。

      • 电气特性 指明在接口电缆的各条线上出现的电压的范围。

      • 功能特性 指明某条线上出现的某一电平的电压表示何种意义。

      • 过程特性 指明对于不同功能的各种可能事件的出现顺序。

    • 有关信道的几个基本概念

      • 单向通信(单工通信)——只能有一个方向的通信而没有反方向的交互。

      • 双向交替通信(半双工通信)——通信的双方都可以发送信息,但不能双方同时发送(当然也就不能同时接收)。

      • 双向同时通信(全双工通信)——通信的双方可以同时发送和接收信息。

    • 物理层下面的传输媒体

      • 导向传输媒体

        • 双绞线

          • 屏蔽双绞线 STP (Shielded Twisted Pair)

          • 无屏蔽双绞线 UTP (Unshielded Twisted Pair)

        • 同轴电缆

          • 50 Ω同轴电缆

          • 75 Ω 同轴电缆

        • 光缆

          • 光纤的工作原理

            • 光线在纤芯中传输的方式是不断地全反射

      • 非导向传输媒体

        • 无线传输所使用的频段很广。

        • 短波通信主要是靠电离层的反射,但短波信道的通信质量较差。

        • 微波在空间主要是直线传播。

          • 卫星通信

          • 地面微波接力通信

  • 第三章 数据链路层

    • 数据链路层的三个基本问题:封装成帧,透明传输,差错检测。

    • 共享式以太网和交换式以太网的区别

      • 共享式以太网和交换式以太网的区别主要在于连接设备和数据传输方式。 共享式以太网是以集线器(Hub)为核心的局域网,所有用户都共享带宽,导致每个用户的实际可用带宽随网络用户数的增加而递减。当数据和用户数量超出一定的限量时,就会造成碰撞冲突,使网络性能衰退。 交换式以太网则采用交换机作为中央设备,每个节点可以独占带宽,从根本上解决了共享以太网的问题。交换机能够识别数据帧,根据帧的目的地址,将数据发送到某一端口,而不是广播到所有端口。这样可以避免与其它端口发生碰撞,提高了网络的实际吞吐量。 总的来说,交换式以太网的网络效率更高,尤其在中大型网络中,能更好地提高网络性能。

    • 虚拟局域网

      • 虚拟局域网可以建立与物理位置无关的逻辑组,只有在同一个虚拟局域网中的成员才会收到链路层广播信息。

      • 使用 VLAN 干线连接来建立虚拟局域网,每台交换机上的一个特殊接口被设置为干线接口,以互连 VLAN 交换机。IEEE 定义了一种扩展的以太网帧格式 802.1Q,它在标准以太网帧上加进了 4 字节首部 VLAN 标签,用于表示该帧属于哪一个虚拟局域网。

  • 第四章 网络层

    • IP地址与MAC地址的区别

      • IP层抽象的互联网屏蔽了下层很复杂的细节,在抽象的网络层上讨论问题,就能够使用统一的、抽象的 IP 地址研究主机和主机或主机和路由器之间的通信

      • IP地址和MAC地址关系:ip地址便于在网络中确认子网、mac地址便于在子网中确认主机,ip地址工作与网络层之上,是逻辑地址;mac地址工作于数据链路层和物理层,是物理地址,由于在链路层把ip数据报组转成帧,ip数据报就成了帧的数据部分,数据链路层和网络层就看不到ip地址了。

    • IP数据报的格式

      • 版本 : 有 4(IPv4)和 6(IPv6)两个值;

      • 首部长度 : 占 4 位,因此最大值为 15。值为 1 表示的是 1 个 32 位字的长度,也就是 4 字节。因为固定部分长度为 20 字节,因此该值最小为 5。如果可选字段的长度不是 4 字节的整数倍,就用尾部的填充部分来填充。

      • 区分服务 : 用来获得更好的服务,一般情况下不使用。

      • 总长度 : 包括首部长度和数据部分长度。

      • 生存时间 :TTL,它的存在是为了防止无法交付的数据报在互联网中不断兜圈子。以路由器跳数为单位,当 TTL 为 0 时就丢弃数据报。

      • 协议 :指出携带的数据应该上交给哪个协议进行处理,例如 ICMP、TCP、UDP 等。

      • 首部检验和 :因为数据报每经过一个路由器,都要重新计算检验和,因此检验和不包含数据部分可以减少计算的工作量。

      • 标识 : 在数据报长度过长从而发生分片的情况下,相同数据报的不同分片具有相同的标识符。

      • 片偏移 : 和标识符一起,用于发生分片的情况。片偏移的单位为 8 字节。

        • IP数据报分片

    • 网际控制报文协议ICMP

      • 简介

        • ICMP 是为了更有效地转发 IP 数据报和提高交付成功的机会。它封装在 IP 数据报中,但是不属于高层协议。

      • ICMP 报文的种类

        • ICMP 差错报告报文

          • 终点不可达 :当路由器或主机不能交付数据报时就向源点发送终点不可达报文。

          • 源点抑制:当路由器或主机由于拥塞而丢弃IP数据报时,就向发送该IP数据报的源点发送源点抑制报文,使源点知道应当把IP数据报的发送速率放慢。

          • 时间超过 :当路由器收到生存时间TTL=0的数据报时,除丢弃该数据报外,还要向源点发送时间超过报文。当终点在预先规定的时间内不能收到一个数据报的全部数据报片时,就把已收到的数据报片都丢弃,并向源点发送时间超过报文。

          • 参数问题 :当路由器或目的主机收到的数据报的首部中有的字段的值不正确时,就丢弃该数据报,并向源点发送参数问题报文。

          • 改变路由(重定向):路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器(也就是找到了更好的路由)。

        • ICMP 询问报文

          • 回送请求和回答报文

          • 时间戳请求和回答报文

        • ICMP 报文的前 4 个字节是统一的格式,共有三个字段:即类型、代码和检验和。接着的 4 个字节的内容与 ICMP 的类型有关。

      • ICMP 的应用举例

        • 1. Ping

          • Ping 是 ICMP 的一个重要应用,主要用来测试两台主机之间的连通性。 Ping 的原理是通过向目的主机发送 ICMP Echo 请求报文,目的主机收到之后会发送 Echo 回答报文。Ping 会根据时间和成功响应的次数估算出数据包往返时间以及丢包率。

        • 2. Traceroute

          • Traceroute 是 ICMP 的另一个应用,用来跟踪一个分组从源点到终点的路径。 Traceroute 发送的 IP 数据报封装的是无法交付的 UDP 用户数据报,并由目的主机发送终点不可达差错报告报文。

            • 源主机向目的主机发送一连串的 IP 数据报。第一个数据报 P1 的生存时间 TTL 设置为 1,当 P1 到达路径上的第一个路由器 R1 时,R1 收下它并把 TTL 减 1,此时 TTL 等于 0,R1 就把 P1 丢弃,并向源主机发送一个 ICMP 时间超过差错报告报文;

            • 源主机接着发送第二个数据报 P2,并把 TTL 设置为 2。P2 先到达 R1,R1 收下后把 TTL 减 1 再转发给 R2,R2 收下后也把 TTL 减 1,由于此时 TTL 等于 0,R2 就丢弃 P2,并向源主机发送一个 ICMP 时间超过差错报文。

            • 不断执行这样的步骤,直到最后一个数据报刚刚到达目的主机,主机不转发数据报,也不把 TTL 值减 1。但是因为数据报封装的是无法交付的 UDP,因此目的主机要向源主机发送 ICMP 终点不可达差错报告报文。

            • 之后源主机知道了到达目的主机所经过的路由器 IP 地址以及到达每个路由器的往返时间。

    • 内部网关协议RIP

      • RIP 是一种基于距离向量的路由选择协议。距离是指跳数,直接相连的路由器跳数为 1。跳数最多为 15,超过 15 表示不可达。 RIP 按固定的时间间隔仅和相邻路由器交换自己的路由表,经过若干次交换之后,所有路由器最终会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器地址。

      • 距离向量算法:

        • 对地址为 X 的相邻路由器发来的 RIP 报文,先修改报文中的所有项目,把下一跳字段中的地址改为 X,并把所有的距离字段加 1;

        • 对修改后的 RIP 报文中的每一个项目,进行以下步骤:

        • 若原来的路由表中没有目的网络 N,则把该项目添加到路由表中;

        • 否则:若下一跳路由器地址是 X,则把收到的项目替换原来路由表中的项目;否则:若收到的项目中的距离 d 小于路由表中的距离,则进行更新(例如原始路由表项为 Net2, 5, P,新表项为 Net2, 4, X,则更新);否则什么也不做。

        • 若 3 分钟还没有收到相邻路由器的更新路由表,则把该相邻路由器标为不可达,即把距离置为 16。

      • RIP 协议实现简单,开销小。但是 RIP 能使用的最大距离为 15,限制了网络的规模。并且当网络出现故障时,要经过比较长的时间才能将此消息传送到所有路由器。

    • 内部网关协议OSPF

      • 开放最短路径优先 OSPF,是为了克服 RIP 的缺点而开发出来的。 开放表示 OSPF 不受某一家厂商控制,而是公开发表的;最短路径优先表示使用了 Dijkstra 提出的最短路径算法 SPF。

      • OSPF 具有以下特点:

        • 向本自治系统中的所有路由器发送信息,这种方法是洪泛法。

        • 发送的信息就是与相邻路由器的链路状态,链路状态包括与哪些路由器相连以及链路的度量,度量用费用、距离、时延、带宽等来表示。

        • 只有当链路状态发生变化时,路由器才会发送信息。

      • 所有路由器都具有全网的拓扑结构图,并且是一致的。相比于 RIP,OSPF 的更新过程收敛的很快。

  • 第五章 运输层

    • 用户数据报协议 UDP

      • UDP 概述

        • 用户数据报协议 UDP(User Datagram Protocol)是无连接的,尽最大可能交付,没有拥塞控制,面向报文(对于应用程序传下来的报文不合并也不拆分,只是添加 UDP 首部),支持一对一、一对多、多对一和多对多的交互通信。

    • 传输控制协议 TCP 概述

      • TCP 最主要的特点

        • 传输控制协议 TCP(Transmission Control Protocol)是面向连接的,提供可靠交付,有流量控制,拥塞控制,提供全双工通信,面向字节流(把应用层传下来的报文看成字节流,把字节流组织成大小不等的数据块),每一条 TCP 连接只能是点对点的(一对一)。

      • TCP 的连接

        • TCP 连接的端点叫做套接字(socket)或插口。

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

    • 用户数据报协议UDP和传输控制协议TCP的区别

      • TCP 是一个面向连接的协议,这意味着在进行数据传输之前,必须先建立一个网络连接。它使用三次握手来建立连接,并使用可靠的、有序的数据传输方式。TCP 在数据传输过程中会检查错误,重传丢失的数据包,确保传输的数据可靠性。TCP 适用于数据传输要求高可靠性和确保数据完整性的应用环境,如文件传输或电子邮件。

      • UDP 是一个无连接的协议,数据传输前不需要建立连接。UDP 不要求可靠、有序的数据传输方式,也不会检查错误或进行重传。这使得 UDP 更加快速、简单和轻量,适用于对实时性要求较高的应用环境,如实时视频或实时音频。

      • 总的来说,TCP 适用于对数据可靠性要求较高、数据量较大的传输场景,而UDP 适用于对实时性和传输效率要求较高的场景。

    • TCP 报文段的首部格式

      • 序号 :用于对字节流进行编号,例如序号为 301,表示第一个字节的编号为 301,如果携带的数据长度为 100 字节,那么下一个报文段的序号应为 401。

      • 确认号 :期望收到的下一个报文段的序号。例如 B 正确收到 A 发送来的一个报文段,序号为 501,携带的数据长度为 200 字节,因此 B 期望下一个报文段的序号为 701,B 发送给 A 的确认报文段中确认号就为 701。

      • 数据偏移 :指的是数据部分距离报文段起始处的偏移量,实际上指的是首部的长度。

      • 确认 ACK :当 ACK=1 时确认号字段有效,否则无效。TCP 规定,在连接建立后所有传送的报文段都必须把 ACK 置 1。

      • 同步 SYN :在连接建立时用来同步序号。当 SYN=1,ACK=0 时表示这是一个连接请求报文段。若对方同意建立连接,则响应报文中 SYN=1,ACK=1。

      • 终止 FIN :用来释放一个连接,当 FIN=1 时,表示此报文段的发送方的数据已发送完毕,并要求释放连接。

      • 窗口 :窗口值作为接收方让发送方设置其发送窗口的依据。之所以要有这个限制,是因为接收方的数据缓存空间是有限的。

    • TCP 的运输连接管理

      • TCP 的连接建立

        • 假设 A 为客户端,B 为服务器端。 首先 B 处于 LISTEN(监听)状态,等待客户的连接请求。 A 向 B 发送连接请求报文,SYN=1,ACK=0,选择一个初始的序号 x。 B 收到连接请求报文,如果同意建立连接,则向 A 发送连接确认报文,SYN=1,ACK=1,确认号为 x+1,同时也选择一个初始的序号 y。 A 收到 B 的连接确认报文后,还要向 B 发出确认,确认号为 y+1,序号为 x+1。 B 收到 A 的确认后,连接建立。

        • 三次握手的原因

          • 第三次握手是为了防止失效的连接请求到达服务器,让服务器错误打开连接。 客户端发送的连接请求如果在网络中滞留,那么就会隔很长一段时间才能收到服务器端发回的连接确认。客户端等待一个超时重传时间之后,就会重新请求连接。但是这个滞留的连接请求最后还是会到达服务器,如果不进行三次握手,那么服务器就会打开两个连接。如果有第三次握手,客户端会忽略服务器之后发送的对滞留连接请求的连接确认,不进行第三次握手,因此就不会再次打开连接。

      • TCP 的连接释放

        • 以下描述不讨论序号和确认号,因为序号和确认号的规则比较简单。并且不讨论 ACK,因为 ACK 在连接建立之后都为 1。 A 发送连接释放报文,FIN=1。 B 收到之后发出确认,此时 TCP 属于半关闭状态,B 能向 A 发送数据但是 A 不能向 B 发送数据。 当 B 不再需要连接时,发送连接释放报文,FIN=1。 A 收到后发出确认,进入 TIME-WAIT 状态,等待 2 MSL(最大报文存活时间)后释放连接。 B 收到 A 的确认后释放连接。

        • 四次挥手的原因

          • 客户端发送了 FIN 连接释放报文之后,服务器收到了这个报文,就进入了 CLOSE-WAIT 状态。这个状态是为了让服务器端发送还未传送完毕的数据,传送完毕之后,服务器会发送 FIN 连接释放报文。

        • TIME_WAIT

          • 客户端接收到服务器端的 FIN 报文后进入此状态,此时并不是直接进入 CLOSED 状态,还需要等待一个时间计时器设置的时间 2MSL。这么做有两个理由:

            • 确保最后一个确认报文能够到达。如果 B 没收到 A 发送来的确认报文,那么就会重新发送连接释放请求报文,A 等待一段时间就是为了处理这种情况的发生。

            • 等待一段时间是为了让本连接持续时间内所产生的所有报文都从网络中消失,使得下一个新的连接不会出现旧的连接请求报文。

      • TCP 的有限状态机

        • 粗实线箭头表示对客户进程的正常变迁。 粗虚线箭头表示对服务器进程的正常变迁。 另一种细线箭头表示异常变迁。

    • TCP 可靠传输的实现

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

        • 窗口是缓存的一部分,用来暂时存放字节流。发送方和接收方各有一个窗口,接收方通过 TCP 报文段中的窗口字段告诉发送方自己的窗口大小,发送方根据这个值和其它信息设置自己的窗口大小。 发送窗口内的字节都允许被发送,接收窗口内的字节都允许被接收。如果发送窗口左部的字节已经发送并且收到了确认,那么就将发送窗口向右滑动一定距离,直到左部第一个字节不是已发送并且已确认的状态;接收窗口的滑动类似,接收窗口左部字节已经发送确认并交付主机,就向右滑动接收窗口。 接收窗口只会对窗口内最后一个按序到达的字节进行确认,例如接收窗口已经收到的字节为 {31, 34, 35},其中 {31} 按序到达,而 {34, 35} 就不是,因此只对字节 31 进行确认。发送方得到一个字节的确认之后,就知道这个字节之前的所有字节都已经被接收

      • 超时重传时间的选择

        • 超时重传

          • TCP 使用超时重传来实现可靠传输:如果一个已经发送的报文段在超时时间内没有收到确认,那么就重传这个报文段。 一个报文段从发送再到接收到确认所经过的时间称为往返时间 RTT,加权平均往返时间 RTTs 计算如下:

          • 其中,0 ≤ a < 1,RTTs 随着 a 的增加更容易受到 RTT 的影响。 超时时间 RTO 应该略大于 RTTs,TCP 使用的超时时间计算如下:(其中 RTTd 为偏差的加权平均值)

      • 选择确认 SACK

  • 第六章 应用层

    • 域名系统 DNS

      • 域名系统概述

        • DNS 是一个分布式数据库,提供了主机名和 IP 地址之间相互转换的服务。这里的分布式数据库是指,每个站点只保留它自己的那部分数据。

      • 因特网的域名结构

        • 域名具有层次结构,从上到下依次为:根域名、顶级域名、二级域名。

      • 域名服务器

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

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

        • DNS 可以使用 UDP 或者 TCP 进行传输,使用的端口号都为 53。大多数情况下 DNS 使用 UDP 进行传输,这就要求域名解析器和域名服务器都必须自己处理超时和重传从而保证可靠性。在两种情况下会使用 TCP 进行传输:

          • 如果返回的响应超过的 512 字节(UDP 最大只支持 512 字节的数据)。

          • 区域传送(区域传送是主域名服务器向辅助域名服务器传送变化的那部分数据)。

    • 动态主机配置协议 DHCP

      • DHCP (Dynamic Host Configuration Protocol) 提供了即插即用的连网方式,用户不再需要手动配置 IP 地址等信息。

      • DHCP 配置的内容不仅是 IP 地址,还包括子网掩码、网关 IP 地址。

      • DHCP 工作过程如下:

        • 1.客户端发送 Discover 报文,该报文的目的地址为 255.255.255.255:67,源地址为 0.0.0.0:68,被放入 UDP 中,该报文被广播到同一个子网的所有主机上。如果客户端和 DHCP 服务器不在同一个子网,就需要使用中继代理。 2.DHCP 服务器收到 Discover 报文之后,发送 Offer 报文给客户端,该报文包含了客户端所需要的信息。因为客户端可能收到多个 DHCP 服务器提供的信息,因此客户端需要进行选择。 3.如果客户端选择了某个 DHCP 服务器提供的信息,那么就发送 Request 报文给该 DHCP 服务器。 4.DHCP 服务器发送 Ack 报文,表示客户端此时可以使用提供给它的信息。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_56999701/article/details/135440459

智能推荐

从零开始搭建Hadoop_创建一个hadoop项目-程序员宅基地

文章浏览阅读331次。第一部分:准备工作1 安装虚拟机2 安装centos73 安装JDK以上三步是准备工作,至此已经完成一台已安装JDK的主机第二部分:准备3台虚拟机以下所有工作最好都在root权限下操作1 克隆上面已经有一台虚拟机了,现在对master进行克隆,克隆出另外2台子机;1.1 进行克隆21.2 下一步1.3 下一步1.4 下一步1.5 根据子机需要,命名和安装路径1.6 ..._创建一个hadoop项目

心脏滴血漏洞HeartBleed CVE-2014-0160深入代码层面的分析_heartbleed代码分析-程序员宅基地

文章浏览阅读1.7k次。心脏滴血漏洞HeartBleed CVE-2014-0160 是由heartbeat功能引入的,本文从深入码层面的分析该漏洞产生的原因_heartbleed代码分析

java读取ofd文档内容_ofd电子文档内容分析工具(分析文档、签章和证书)-程序员宅基地

文章浏览阅读1.4k次。前言ofd是国家文档标准,其对标的文档格式是pdf。ofd文档是容器格式文件,ofd其实就是压缩包。将ofd文件后缀改为.zip,解压后可看到文件包含的内容。ofd文件分析工具下载:点我下载。ofd文件解压后,可以看到如下内容: 对于xml文件,可以用文本工具查看。但是对于印章文件(Seal.esl)、签名文件(SignedValue.dat)就无法查看其内容了。本人开发一款ofd内容查看器,..._signedvalue.dat

基于FPGA的数据采集系统(一)_基于fpga的信息采集-程序员宅基地

文章浏览阅读1.8w次,点赞29次,收藏313次。整体系统设计本设计主要是对ADC和DAC的使用,主要实现功能流程为:首先通过串口向FPGA发送控制信号,控制DAC芯片tlv5618进行DA装换,转换的数据存在ROM中,转换开始时读取ROM中数据进行读取转换。其次用按键控制adc128s052进行模数转换100次,模数转换数据存储到FIFO中,再从FIFO中读取数据通过串口输出显示在pc上。其整体系统框图如下:图1:FPGA数据采集系统框图从图中可以看出,该系统主要包括9个模块:串口接收模块、按键消抖模块、按键控制模块、ROM模块、D.._基于fpga的信息采集

微服务 spring cloud zuul com.netflix.zuul.exception.ZuulException GENERAL-程序员宅基地

文章浏览阅读2.5w次。1.背景错误信息:-- [http-nio-9904-exec-5] o.s.c.n.z.filters.post.SendErrorFilter : Error during filteringcom.netflix.zuul.exception.ZuulException: Forwarding error at org.springframework.cloud..._com.netflix.zuul.exception.zuulexception

邻接矩阵-建立图-程序员宅基地

文章浏览阅读358次。1.介绍图的相关概念  图是由顶点的有穷非空集和一个描述顶点之间关系-边(或者弧)的集合组成。通常,图中的数据元素被称为顶点,顶点间的关系用边表示,图通常用字母G表示,图的顶点通常用字母V表示,所以图可以定义为:  G=(V,E)其中,V(G)是图中顶点的有穷非空集合,E(G)是V(G)中顶点的边的有穷集合1.1 无向图:图中任意两个顶点构成的边是没有方向的1.2 有向图:图中..._给定一个邻接矩阵未必能够造出一个图

随便推点

MDT2012部署系列之11 WDS安装与配置-程序员宅基地

文章浏览阅读321次。(十二)、WDS服务器安装通过前面的测试我们会发现,每次安装的时候需要加域光盘映像,这是一个比较麻烦的事情,试想一个上万个的公司,你天天带着一个光盘与光驱去给别人装系统,这将是一个多么痛苦的事情啊,有什么方法可以解决这个问题了?答案是肯定的,下面我们就来简单说一下。WDS服务器,它是Windows自带的一个免费的基于系统本身角色的一个功能,它主要提供一种简单、安全的通过网络快速、远程将Window..._doc server2012上通过wds+mdt无人值守部署win11系统.doc

python--xlrd/xlwt/xlutils_xlutils模块可以读xlsx吗-程序员宅基地

文章浏览阅读219次。python–xlrd/xlwt/xlutilsxlrd只能读取,不能改,支持 xlsx和xls 格式xlwt只能改,不能读xlwt只能保存为.xls格式xlutils能将xlrd.Book转为xlwt.Workbook,从而得以在现有xls的基础上修改数据,并创建一个新的xls,实现修改xlrd打开文件import xlrdexcel=xlrd.open_workbook('E:/test.xlsx') 返回值为xlrd.book.Book对象,不能修改获取sheett_xlutils模块可以读xlsx吗

关于新版本selenium定位元素报错:‘WebDriver‘ object has no attribute ‘find_element_by_id‘等问题_unresolved attribute reference 'find_element_by_id-程序员宅基地

文章浏览阅读8.2w次,点赞267次,收藏656次。运行Selenium出现'WebDriver' object has no attribute 'find_element_by_id'或AttributeError: 'WebDriver' object has no attribute 'find_element_by_xpath'等定位元素代码错误,是因为selenium更新到了新的版本,以前的一些语法经过改动。..............._unresolved attribute reference 'find_element_by_id' for class 'webdriver

DOM对象转换成jQuery对象转换与子页面获取父页面DOM对象-程序员宅基地

文章浏览阅读198次。一:模态窗口//父页面JSwindow.showModalDialog(ifrmehref, window, 'dialogWidth:550px;dialogHeight:150px;help:no;resizable:no;status:no');//子页面获取父页面DOM对象//window.showModalDialog的DOM对象var v=parentWin..._jquery获取父window下的dom对象

什么是算法?-程序员宅基地

文章浏览阅读1.7w次,点赞15次,收藏129次。算法(algorithm)是解决一系列问题的清晰指令,也就是,能对一定规范的输入,在有限的时间内获得所要求的输出。 简单来说,算法就是解决一个问题的具体方法和步骤。算法是程序的灵 魂。二、算法的特征1.可行性 算法中执行的任何计算步骤都可以分解为基本可执行的操作步,即每个计算步都可以在有限时间里完成(也称之为有效性) 算法的每一步都要有确切的意义,不能有二义性。例如“增加x的值”,并没有说增加多少,计算机就无法执行明确的运算。 _算法

【网络安全】网络安全的标准和规范_网络安全标准规范-程序员宅基地

文章浏览阅读1.5k次,点赞18次,收藏26次。网络安全的标准和规范是网络安全领域的重要组成部分。它们为网络安全提供了技术依据,规定了网络安全的技术要求和操作方式,帮助我们构建安全的网络环境。下面,我们将详细介绍一些主要的网络安全标准和规范,以及它们在实际操作中的应用。_网络安全标准规范