HCIA----数通
数通条件
1.需要有个通道
2.需要有节点
3.都有载体
通过一些特殊的通道把分布在不同地理位置的物品连接起来,从而实现信息的传输和共享。
网络作用
1、数据通讯
2、资源共享
3、分布处理
计算机网络基础
世界上第一台计算机—1946年—计算导弹弹道—分时操作系统—允许不同终端同时运行
二进制语言(机器语言)|
*自然语言—编码
*编码—二进制
*介质访问控制层:控制硬件;将二进制转换为电流,并控制物理层输出电流
*计算—CPU
对等网
*升级硬件资源
*增加电脑数量
继续扩大网络
*增大距离
。信号失真
*网线(减小失真)
。信号衰减
*中继器
*增加节点
。网络拓展结构
。总线型:由一条多芯网线向四周延展,连接整个节点。
*优点:信道利用率高,结构简单,成本低
*缺点:同一时刻,仅允许两个节点进行通讯
。环形:由节点与节点连接的线路组成闭合环
*优点:增加和删除设备操作简单
*缺点:当某一节点故障时,会影响全网,导致整张网络瘫痪
。星型:由中央节点和通过链路到中央节点的节点组成
*优点:结构简单,扩展性强,连接方便
*缺点:信道利用率低,对中心节点要求高
。网状:实际上由星型拓展而来,而是用全连接的方式,网状中任意一个节点都属于中心节点
*优点:稳定,从节点到节点由多条路径可选
*缺点:结构复杂,成本高
集线器—HUB(网络HUB)
*纯物理层设备
*缺点:
1、安全问题
2、延时问题—产生大量的垃圾信息
3、地址问题—MAC地址—48位二进制—十二位十六进制表示
4、冲突问题—载波侦听多路访问/冲突检测机制—CSMA/CD(先听后发、边听边发、冲突停发、随机延迟后重发)—仅仅减小了冲突
。冲突域:连接在同一根到线上的所有工作站的集合
*网络无线传输距离
*完全没有冲突
*存在单波传输数据
出现了一台设备,网桥(二层设备—处理二进制信号)—交换机
交换机
交换机工作于OSI参考模型的第二层,即数据链路层。交换机内部的CPU会在每个端口成功连接时,通过将MAC地址和端口对应,形成一张MAC表。在今后的通讯中,发往该MAC地址的数据包将仅送往其对应的端口,而不是所有的端口。因此,交换机可用于划分数据链路层广播,即冲突域;但它不能划分网络层广播,即广播域。
交换机拥有一条很高带宽的背部总线和内部交换矩阵。交换机的所有的端口都挂接在这条背部总线上,控制电路收到数据包以后,处理端口会查找内存中的地址对照表以确定目的MAC(网卡的硬件地址)的NIC(网卡)挂接在哪个端口上,通过内部交换矩阵迅速将数据包传送到目的端口,目的MAC若不存在,广播到所有的端口,接收端口回应后交换机会“学习”新的MAC地址,并把它添加入内部MAC地址表中。使用交换机也可以把网络“分段”,通过对照IP地址表,交换机只允许必要的网络流量通过交换机。通过交换机的过滤和转发,可以有效的减少冲突域。
识别MAC地址—MAC地址自学习
。MAC地址自学功能:交换机在接收到一个数据文件后,根据数据报文中的源MAC地址,与接受报问的接口形
成对应关系,并记录在MAC地址表中
。然后,交换机根据数据报文的目的MAC地址,查询MAC地址表项,若有匹配项,则根据匹配项的指示直接进
行单波转发
。若无匹配项,则进行洪泛操作(除了数据的进入接口外,均发送一份数据)
。MAC地址表不是永久记录的,而是存在老化时间—五分钟。
交换网络—仅仅由交换机连接各个节点形成的网络—仅具备几十个节点,最多不超过200个节点。
广播域—洪范的范围
路由器
定义:路由器(Router)是一种负责寻径的网络设备,它在互连网络中从多条路径中寻找通讯量最少的一条网
络路径提供给用户通信。路由器用于连接多个逻辑上分开的网络。对用户提供最佳的通信路径,路由器利用路由表为数据传输选择路径,路由表包含网络地址以及各地址之间距离的清单,路由器利用路由表查找数据包从当前位置到目的地址的正确路径。路由器使用最少时间算法或最优路径算法来调整信息传递的路径,如果某一网络路径发生故障或堵塞,路由器可选择另一条路径,以保证信息的正常传输。路由器可进行数据格式的转换,成为不同协议之间网络互连的必要设备。
*隔离广播域
。路由器的一个接口就是一个独立的广播域。
*转发数据
。依靠路由表进行数据转发
*依靠交换机进行数据转发—同广播域
*借助路由器进行数据转发—跨广播域
IP地址
IPv4:32位二进制构成,2的32次方;点分十进制
IPv6:128位二进制,
171.68.129.1
10101011.10010.10000001.1
IP地址分为两部分:
网络位:表示该IP所在的网络
主机位:表示主机号
掩码
*掩码是由32位二进制组成,用以判断IP地址的网络位位数。
*连续的1+连续的0组成。
*掩码中的数字1所代表的含义为IP地址的比特位为网络位
网关
被称为一个广播域的本户,也就是路由器与该广播域所连接的接口,这个接口的IP地址称之为网关IP。
1、判断是否为同一广播域
2、若为同一广播域,则将数据发送给交换机,由交换机进行洪范或单薄形式传播。
3、若为不同广播域,则将数据发送给路由器,即网关IP所在设备,再由路由器进行转发
4、目的主机接收到该数据后,重复前三步操作进行数据发送
ARP协议
原理:根据已知的地址来获取与其对应的另一种未知地址
ARP工作过程:
*PC1发送一个广播帧,源IP和源MAC是PC1的,目的IP是网关,目的MAC是FFFF:FFFF:FFFF
。该数据包会被同广播域内所有主机接收,并且该报文内容是(ARP请求报文)
。谁是***IP,请回复我
*非目的主机PC2:
。由于该广播帧是网络中所有主机均可接受的报文,故PC2会接受这个数据帧,提取IP地址,发现并不 是找自己的,所以会丢弃该数据包
*目的主机(网关):
。网管接收到该报文后,会发现目的IP地址是本接口IP,故会查看报文内容,并打包一个数据报文进行恢 复,其中,包含了本接口的MAC地址
*实际上设备在进行ARP请求之前,会先查找本地的ARP缓存表,若本地存在对应关系,则直接按照本地ARP缓存表中描述的MAC地址进行数据封装。若没有对应关系,则会发送ARP请求报文,接收方会回复ARP应答报文,当发送方接收到ARP应答报文后,会将该报文的内容填充到ARP缓存表中。
*ARP缓存表的老化时间—180s
*ARP分类
。正向ARP—通过IP获取MAC(网络中最常见的)
。反向ARP—通过MAC获取IP
。免费ARP—无故ARP—用于自我介绍和冲突检测
。代理ARP—由网关设备代替主机查询MAC地址
TCP/IP
美国国防部开发
OSI参考模型(开放式系统互联模型)—国际化标准组织ISO提出—协议组(协议模型)
应用层:接受用户数据,人机交互的接口
表示层:将编码转化为二进制语言(加密、解密)—统一格式
会话层:针对传输的每一种数据建立一条链接(防止不同数据之间相互干扰)
控制层面:上三层
数据层面:下四层
传输层:区分流量、定义数据传输方式;TCP、UDP
网络层:通过IP地址进行逻辑寻址
数据链路层:通过MAC地址进行物流寻址
。LLC—逻辑链路控制层
。MAC—介质访问控制层
物理层:定义协议物理特性(电压、电气、接口规范);传输比特流
报文的封装和解封装
PDU
协议数据单元---数据在不同层面的表现形式
上三层---数据
传输层---数据段
网络层---数据包
数据链路层---数据帧
物理层---比特流
TCP/IP—互联网使用
标准 对等
物理层
*规定了一些物理特性(数据传输速率、传输模式、电气电压)
*代表设备:中继器、集线器
。介质
*同轴电缆
。10BASE5—粗同轴电缆—500m
。10BASE2—细同轴电缆—185m
。速率极低
*双绞线
。分为屏蔽双绞线(STP),非屏蔽双绞线(UTP)
。类型:1、2 、3、4、5、超5、6、超6、7、8
*光纤
*双工模式
。全双工:通讯双方都能同时发送和接受数据
。半双工:通讯双方都能发送和接收数据,但是不能同时进行
。同一条物理线路路上的 设备双工模式必须相同
*线序
。568A
。568B
橙白、橙、绿白、蓝、蓝白、绿、棕白、棕
直连线、交叉线
数据链路层
一、代表设备—网桥、交换机
二、链路类型
1)局域网—以太网(MAC地址)
2)广域网
三、MAC地址—物理地址—二层地址
1)前24位:表示厂商ID
2)后24位:表示产品ID
四、数据帧
1)以太网- 2格式、IEEE 802.3格式。
五、帧发送方式
单播、广播(目的MAC=FFFF:FFFF:FFFF)、组播(给特定的设备汇聚成分组,对特定分组的所有设备进行广播,就叫做组播。)
网络层
1.IP地址—逻辑寻址
2.IP地址的有类分址—根据IP地址前八位二进制的数字特征分类
A: 0XXX XXXX----0.0.0.0-127.255.255.255—掩码为8
B: 10XX XXXX----128.0.0.0-191.255.255.255—掩码为16
C: 110X XXXX----192.0.0.0-223.255.255.255—掩码24
D: 1110 XXXX----224.0.0.0-239.255.255.255
E: 1111 XXXX----240.0.0.0-255.255.255.255
A\B\C三类---单播地址---可以做源地址,也可以做目的地址
D---组播地址---只能当作目的地址使用
E---保留地址(科研地址)
3.特殊地址—不能手工配置在电脑上
* 0.0.0.0----网络地址(代表所有地址,或代表没有地址)
* 255.255.255.255----受限广播地址
* 192.168.1.0/24----主机位全0----代表该广播域-----网段
* 192.168.1.255/24----主机位全1----定向广播地址
* 127.X.X.X----本地测试地址
* 169.254.0.0/16----本地链路地址
4.私有地址----可重复
-
A类:10.0.0.0-10.255.255.255----1个地址段
-
B类:172.16.0.0-172.31.255.255----16个地址段
-
C类:192.168.0.0-192.168.255.255----256个地址段
5.公有地址
-
除了上述私有地址和特殊地址外的所有单播地址
IP报文头部
1、版本(4位)
IP协议的版本,目前的IP协议版本号为4,下一代IP协议版本号为6。
2、首部长度(4位)
IP报头的长度。固定部分的长度(20字节)和可变部分的长度之和。共占4位。最大为1111,即10进制的15,代表IP报头的最大长度可以为15个32bits(4字节),也就是最长可为15*4=60字节,除去固定部分的长度20字节,可变部分的长度最大为40字节。
3、服务类型(8位)
用来获得更好的服务。其中的前3位表示报文的优先级,后面的几位分别表示要求更低时延、更高的吞吐量、更高的可靠性、更低的路由代价等。对应位为1即有相应要求,为0则不要求。
4、总长度(16位)
IP报文的总长度。报头的长度和数据部分的长度之和。注意这里的单位为字节,而不是4字节,所以一个IP报文的的最大长度为65535个字节。
5、标识(16位)
唯一的标识主机发送的每一分数据报。通常每发送一个报文,它的值加一。当IP报文长度超过传输网络的MTU(最大传输单元)时必须分片,这个标识字段的值被复制到所有数据分片的标识字段中,使得这些分片在达到最终目的地时可以依照标识字段的内容重新组成原先的数据。
6、标志(3位)
共3位。R、DF、MF三位。目前只有后两位有效,DF位:为1表示不分片,为0表示分片。MF:为1表示“更多的片”,为0表示这是最后一片。
7、片位移(13位)
指当前分片在原数据报(分片前的数据报)中相对于用户数据字段的偏移量,即在原数据报中的相对位置。(需要再乘以8)
8、生存时间(8位)
TTL(Time to Live)。该字段表明当前报文还能生存多久。每经过1ms或者一个网关,TTL的值自动减1,当生存时间为0时,报文将被认为目的主机不可到达而丢弃。TTL 字段是由发送端初始设置一个 8 bit字段.推荐的初始值由分配数字 RFC 指定,当前值为 64。发送 ICMP 回显应答时经常把 TTL 设为最大值 255。
9、协议(8位)
指出IP报文携带的数据使用的是那种协议,以便目的主机的IP层能知道要将数据报上交到哪个进程(不同的协议有专门不同的进程处理)。和端口号类似,此处采用协议号,TCP的协议号为6,UDP的协议号为17。ICMP的协议号为1,IGMP的协议号为2.
10、首部校验和(16位)
用于检验IP报文头部在传播的过程中是否出错,检查IP报头的完整性。
11、源IP地址(32位)
标识IP数据报的源端设备。
12、目的IP地址(32位)
标识IP数据报的目的地址。
—————————————
- IP分片----MTU(最大传输单元)—以太网中MTU=1500字节
- 标识位----给每一个分片的数据报文分配一个序列号,从小到大,一次加一,用于让接收方重组数据
- 标志位----3bit
- 第一位—无意义,用0填充。
- 第二位—DF位----若该位置为1,则代表未分片;若为0,则代表分片。
- 第三位—M位----表示该报文是否为最后一片;若为1,则代表后续还有报文。
片偏移:计算数据报文在源数据报文中的相对位置,单位为8字节。
传输层
- 端口号—标识进程----16位二进制
- 0-65535
- 1-1023—著名端口(静态端口)
- 1024-65535—动态端口—某些协议自动随机生成的
- 0-65535
常见端口号
telnet-----23
ftp-----20/21
http----80
https----443
DNS----53
TCP协议----传输控制协议
是一种面向连接的可靠性协议
可靠性
- 确认机制:传输确认,每收到一个数据报文,均需要进行一次确认
- 重传机制:当一个数据中的某个报文丢失,会提醒要求重新传输该丢失报文
- 排序机制:传输一个数据段,被分为多个报文,从不同路径传输,最终到达目的地的顺序会被打乱,需要重新排列组合恢复原始报文内容
- 流控机制:(滑动窗口机制):调节窗口大小来对流量进行控制
- 窗口大小:指无需等待确认就可以连续发送的最大数据量
TCP发送数据的过程(超时和重传)
TCP数据的发送过程也与建立连接的过程相类似:
发送数据的过程采用了累计确认的机制,其中ACK表示的是累积确认的字节序号。
如上图,发送的TCP分组中可以包含数据,也可以不包含数据,但是一定需要包含seq序号和确认号。seq序号表示数据区中第一个字节的序号,而回传的ack确认号的值为seq的值加上发送的数据字节数。表示这些字节的数据已经被确认接受了,并表达了期望接收的下一个字节序号位置。
发送TCP分组的一方会在发送分组时设置超时时间并开启计时器,当在超时时间内未收到该分组的ACK回复时,会认为该分组丢失,并重发该分组。假如之前的分组被连续发送,而该分组及之后的分组已经被接收端确认,那么本次重复分组收到的ACK是累计确认的字节序号值,而非该分组的seq+数据字节数,如上图右侧所示。
TCP分段
TCP协议封装的数据不允许在IP层面进行分片操作。
MSS(最大传输段)=MTU-IP头部-TCP头部
进行控制
- 窗口大小:指无需等待确认就可以连续发送的最大数据量