网络初级课----HCIA 华为认证的ICT工程师 网络就是通过一些特殊的通道把分布在不同地址位置的物品连接起来,从而实现信息的传输和共享。 # 计算机网络 #### 计算机 1946年诞生, 计算机的功能: - 应用层-----将自然语言--->编码 - 表示层-----将编码--->二进制数 - 介质访问控制层----控制硬件,比如将二进制转换为电流输出。 - 物理层-----CPU计算、电流输入输出 #### 对等网 #### 网络扩大方案 ##### 增大距离 - 信号失真----传输线缆----仅能减小失真,但不能完全避免失真现象 - 信号衰减-----**中继器**-----仅能延长5倍传输距离,现今已被淘汰。 ##### 增加节点 节点的连接方式-------**网络拓扑结构** - 总线型-----由一条多芯的网线向四周延伸,连接各个节点 - 优点----信道利用率高,结构简单,成本低 - 缺点----同一时刻仅允许两个节点进行通讯 - 环型----由节点和节点连接的线路组成的闭合环 - 优点----增加和删除设备操作简单 - 缺点----当某一节点故障时,会影响全网,导致整张网络瘫痪。 - **星型**-----由中央节点和通过链路连接到中央节点的节点组成 - 优点---结构简单、连接方便、扩展性强 - 缺点---信道利用率低,对中央节点要求高,同时刻仅允许两个节点通讯。 - 全连接型(网状结构)-----实际上是星型拓扑的扩展,使用了全连接的方式。任何节点都可以是中心节点 - 优点----从节点到节点有多条路径可以选择,稳定。 - 缺点----结构复杂,成本高。 集线器----HUB----濒临淘汰 - 地址问题----MAC地址----48位二进制组成 - 延时问题----因为产生大量垃圾信息,增加了信息延时 - 安全问题----A节点给B节点发送信息时,别的节点监听到了 - 冲突问题----节点A给节点B发消息,同时节点B也给节点C发消息,两个消息在集线器相遇,相互抵消。 - CSMA/CD------载波侦听多路访问/冲突检测机制(**先听后发、边听边发、冲突停发、随机延迟后重发**) - 该机制仅减少了冲突的次数,而没有完全避免冲突。 - <font color='red'>**冲突域---->连接在同一根物理线路上的所有工作站的集合**</font>。 #### 网络扩大需求 - 网络的传输距离无限制 - 完全没有冲突 - 实现数据单播传输 网桥----将物理信号转换为二进制数据,并将数据存储在设备内存中,然后重新生成新的物理信号进行传输。 #### 交换机---网桥的升级版 - 二层设备,可以处理二进制数据。 - 交换机具备识别MAC地址的功能,并且根据识别的内容,会生成一个表项,叫MAC地址表。**交换机基于MAC地址表进行数据转发**。 - 交换机工作原理 - ![image-20220708143102074](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20220708143102074.png) - PC1给PC3发送信息,此时源MAC=PC1,目的MAC=PC3. - 当数据来到交换机时,交换机会开启MAC地址自学习功能,将源MAC地址与接收到该数据的端口的关系记录在MAC地址表中。 - 然后根据目的MAC地址进行查询转发,若MAC地址表中存在该目的MAC地址,则直接单播转发,若不存在,则进行洪泛操作(除了流量的入接口外,所有接口复制转发一次流量) - MAC地址表并不是永久存在,存在300S的老化时间,这样保证了交换机中的MAC地址表不会过于庞大从而影响到数据的转发速率。 **广播域----一个数据包所洪泛的范围** #### 路由器 - 隔离广播域-----路由器的一个接口就是一个独立的广播域 - 转发数据----依靠路由表进行 - 同广播域通讯----依靠交换机进行 - 跨广播域通讯----借助路由器进行 设备通过IP地址来判断执行同广播域还是跨广播域通讯。 #### IP地址----逻辑地址 IPv4地址----32位二进制组成,点分十进制 IPv6地址----128位二进制,冒号分十六进制 192.168.1.1----11000000.10101000.00000001.00000001 IP地址组成===网络位(该IP所在的网段)+主机位(主机的编号) **网络位相同而主机位可以不同的,即为同一个广播域**。 ![image-20211025012448612](C:/Users/lenovo/AppData/Roaming/Typora/typora-user-images/image-20211025012448612.png?lastModify=1636370153) #### 掩码 作用:用来判断IP地址的网络位是多少。 掩码由32位二进制组成,使用点分十进制表示,是**连续的1+连续的0**。<font color='red'>**掩码的1所对应的IP地址中的比特位即为网络位**</font>。 192.168.1.1-----11000000.10101000.00000001.00000001 255.255.0.0-----11111111.11111111.00000000.00000000 #### 网关 ![image-20230410192920631](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20230410192920631.png) ### ARP协议 原理:根据已知的地址来获取与其对应的另一种地址。 特殊的MAC地址:FFFF:FFFF:FFFF-----代表广播地址 工作过程: - 发送者 - PC1构造一个广播帧(目的MAC地址全F),源IP和源MAC是PC1自己的,目的IP是192.168.1.100,该数据被发送给交换机后,交换机看到目的MAC地址全F,则直接进行洪泛操作,而不用在本地MAC地址表中查询。-----**ARP请求报文**。--------我是谁,我找192.168.1.00,请回复我。 - 若PC2接收到该请求报文,根据目的MAC地址,会认为该报文可能是找我的,故而拆除报文封装,查看IP地址内容,因目的IP地址非本地,故丢弃该请求报文。 - 若路由器接收到该请求报文,根据目的MAC地址,会认为该报文可能是找我的,故而拆除报文封装,查看IP地址内容,因目的IP地址为路由器本地IP地址,故查看数据内容,并回复PC1 - 路由器构造一个单播帧,源IP和源MAC均为路由器本地数值,目的IP为192.168.1.1,目的MAC为AAAA:AAAA:AAAA,该报文为**ARP应答报文**。 - 交换机接收到应答报文后,会根据目的MAC地址查询MAC地址表并进行单播转发。 - PC1接收到该报文后,成功获取到路由器的MAC地址。并将该MAC地址记录在本地的**ARP缓存表**中,进而构造访问PC3的数据包。 - ARP缓存表-----存在老化时间----180S ARP分类 - 正向ARP----通过IP地址获取MAC地址-----网络中最常见的 - 反向ARP----通过MAC地址获取IP地址 - 免费(无故)ARP-----自我介绍、冲突检测 - 代理ARP-----由网关设备代替主机查询MAC地址
OSI七层参考模型---开放式系统互联模型 ISO-----国际标准化组织 ![image-20211108200920941](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20211108200920941.png) #### OSI七层参考模型 - 应用层------接收用户数据,人机交互的接口,将自然语言--->编码 - 表示层------将逻辑语言转换为机器语言 - 会话层-----针对传输的每一种数据建立一条连接(防止数据间相互干扰) 上三层-----控制层面 下四层-----数据层面 - 传输层-----区分流量,定义数据传输方式 - 网络层-----通过IP地址进行逻辑寻址 - 数据链路层-----介质访问控制--MAC;逻辑链路控制层---LLC - 物理层----定义一些物理特性,传播比特流 #### 报文封装与解封装 ![image-20211111103913408](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20211111103913408.png) ![image-20211111103925803](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20211111103925803.png) ##### PDU----协议数据单元 上三层----数据 传输层----数据段 网络层-----数据包 数据链路层---数据帧 物理层----比特流 ## TCP/IP协议栈 ### 物理层 ##### 传输介质 - 同轴电缆 - 传输速率----10Mbps - 粗同轴电缆-----500米 - 细同轴电缆-----185米 - 双绞线 - 线序 - 568A - 绿白、绿、橙白、蓝、蓝白、橙、棕白、棕 - **568B** - 橙白、橙、绿白、蓝、蓝白、绿、棕白、棕 - ![image-20220709111324103](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20220709111324103.png) - 光纤 - ![image-20220709111335443](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20220709111335443.png) ##### 双工模式 - 单工----设备仅支持发送数据或接收数据 - 半双工-----设备可以发送和接收数据,但是不能同时进行----对讲机 - 全双工-----设备可以发送和接收数据,并可以同时进行-----电话 - <font color='red'>**同一物理链路连接的设备双工模式必须相同**</font>。 ### 数据链路层 LAN----局域网,现今局域网使用的数据链路层协议是以太网协议。 以太网当中,存在最重要的通讯基础就是**MAC地址**。 ##### 数据帧 EthernetⅡ帧格式 ![image-20211111111720684](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20211111111720684.png) 帧的发送方式 - 单播帧----一对一发送数据 - 组播帧-----在特定情况下使用,目的为一组设备 - 广播帧-----目的MAC全1 ### 网络层 **有类分址** ![image-20211111112507171](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20211111112507171.png) 有类地址分类按照IP地址的前8位数字特征进行分类,共分出五类,其中A、B、C类为单播地址,掩码分别为8、16、24位。 **特殊地址** - 无效地址------0.X.X.X--------0.0.0.0(1、代表没有IP地址;2、代表所有网络) - 本地测试地址----127.X.X.X - 受限广播地址----255.255.255.255 - 主机位全0----192.168.1.0/24---代表一个网段 - 主机位全1----192.168.1.255/25----定向广播地址 - 169.254.0.0/16 **私有地址** - A类:10.0.0.0---10.255.255.255 - 10.0.0.0/8 - B类:172.16.0.0---172.31.255.255 - 172.16.0.0/16、172.17.0.0/16、172.18.0.0/16......172.31.0.0/16----共16个 - C类:192.168.0.0---192.168.255.255 - 共256个地址段,192.168.1.0/24 **公有地址** 除了特殊地址和私有地址外的所有单播地址。 #### IP协议 ![image-20211111113452919](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20211111113452919.png) - 生存时间----TTL----最大值255 - 单位为路由器个数,数据包每被一个路由器进行转发,则TTL值-1 **IP分片** 以太网当中,规定最大传输的一个数据包的大小为1500字节。-该值被称为MTU---最大传输单元。 - Identification-----标识 - 序号,用于标记数据包的先后顺序,方便后续接收方将数据进行恢复重组。 - Flags----标志位----3bit - 固定位第一位为0 - DF位----代表该报文是否分片,若为0则代表分片,若为1则代表未分片。 - MF位----代表该报文是否为最后一片,若为0则代表最后一片,若为1则代表后续还有其他报文。 - Fragment-----片偏移 - 标识分片后的报文在原始报文中的相对位置,单位为8字节。 传输层给网络层发送一个5000字节大小的报文,该报文在网络层需要进行IP分片,问此时IP分片的数量以及分片后的报文的标识、标志位和片偏移为多少。 ### 传输层 **端口号----作用就是标识进程** - 静态端口----网络上比较常用的协议固定使用的端口号 - 1-1023 - ``` telnet----23 ftp----20/21 http---80 https----443 dns---53 dhcp---67/68 ``` - 动态端口----某些协议自动随机生成的端口号 - 1024-65535 #### TCP协议-----传输控制协议 一种面向连接的可靠性协议。 ![image-20211112094543182](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image-20211112094543182.png) **可靠性** 确认机制-----传输确认,每接收到一个数据段,都需要进行一次确认 重传机制----超时重传,当一个数据段中的某一个包丢失,会提示要求重新传输这个报文 排序机制----传输一个报文,可能会被分为多个数据包,并从不同路径传输,最终达到目的地的顺序会被打乱,需要进行重新排序。-----重新排序依靠TCP的序号字段 流控机制(滑动窗口机制):通过调节窗口大小来对流量进行控制。 窗口大小:指无需等待确认就可以连续发送的数据的最大量。 TCP为了保证自身的可靠性,具备重传机制,故不允许在网络层进行IP分片。而TCP会在传输层使用分段的方式将报文大小分割成满足网络层MTU数值的大小,以保证不会被网络层分片。 MSS(最大传输段)===MTU-IP头部-TCP头部 PMTU----路径MTU发现协议 ``` 在IP头部中,DF字段设置为1,表示不能分片。 当接收方接收到一个不能分片的报文时,会将该报文丢弃,并回复一个ICMP报文(告诉发出者,数据不可达,且表明不可达原因),同时携带上本地的MTU值 发送方接收到该ICMP报文后,因为TCP的重传机制,会重新发送一个数据,此时该数据会根据ICMP报文中的新的MTU值重新进行分段。 ``` **面向连接** - 三次握手 - ![image-20211112094641345](https://hwh-1258460726.cos.ap-nanjing.myqcloud.com//typora-pic/image