HCIP——HCIA回顾(笔记)

OSI

OSI -- 开放式系统互联参考模型(7层参考模型)
应用层

抽象语言 -》编码

表示层

编码-》二进制

会话层

提供应用程序的会话地址

传输层
分段

数据包容量不易过大,否则影响传输效率及共享宽带;分段大小由MTU决定;(MTU:最大传输单元,默认1500)

端口号

0-65535,其中1-1023注明端口,用于默认标记固定服务;1024-65535动态端口(高端口),用于随机对应终端的各种进程。

UDP

用户数据报文协议 --- 非面向连接的不可靠传输协议;传输层的基本协议,仅完成传输层的基本工作(分段、端口号)

TCP

传输控制协议 --- 面向连接的可靠传输协议;除了完成传输层的基本工作外,还需要保障传输的可靠性;

面向连接 --- 通过TCP的三次握手建立端到端的虚链路

可靠传输 --- 四种机制(确认、重传、排序、流控(滑动窗口))

TCP的三次握手

最开始的时候客户端和服务器都是处于CLOSED关闭状态。主动打开连接的为客户端,被动打开连接的是服务器。
​
TCP服务器进程先创建传输控制块TCB,时刻准备接受客户进程的连接请求,此时服务器就进入了 LISTEN 监听状态
​
第一次握手 TCP客户进程也是先创建传输控制块TCB,然后向服务器发出连接请求报文,这是报文首部中的同部位SYN=1,同时选择一个初始序列号 seq=x ,此时,TCP客户端进程进入了 SYN-SENT 同步已发送状态
​
第二次握手 TCP服务器收到请求报文后,如果同意连接,则会向客户端发出确认报文。确认报文中应该 ACK=1,SYN=1,确认号是ack=x+1,同时也要为自己初始化一个序列号 seq=y,此时,TCP服务器进程进入了 SYN-RCVD 同步收到状态
​
第三次握手 TCP客户端收到确认后,还要向服务器给出确认。确认报文的ACK=1,ack=y+1,自己的序列号seq=x+1,此时,TCP连接建立,客户端进入ESTABLISHED已建立连接状态 触发三次握手

有人可能会很疑惑为什么要进行第三次握手?

主要原因:防止已经失效的连接请求报文突然又传送到了服务器,从而产生错误
​
第一次握手: 客户端向服务器端发送报文
证明客户端的发送能力正常
​
第二次握手:服务器端接收到报文并向客户端发送报文
证明服务器端的接收能力、发送能力正常
​
第三次握手:客户端向服务器发送报文
证明客户端的接收能力正常

TCP的四次挥手
数据传输完毕后,双方都可释放连接。最开始的时候,客户端和服务器都是处于ESTABLISHED状态,然后客户端主动关闭,服务器被动关闭。
​
第一次挥手 客户端发出连接释放报文,并且停止发送数据。释放数据报文首部,FIN=1,其序列号为seq=u(等于前面已经传送过来的数据的最后一个字节的序号加1),此时,客户端进入FIN-WAIT-1(终止等待1)状态
​
第二次挥手 服务器端接收到连接释放报文后,发出确认报文,ACK=1,ack=u+1,并且带上自己的序列号seq=v,此时,服务端就进入了CLOSE-WAIT 关闭等待状态
​
第三次挥手 客户端接收到服务器端的确认请求后,客户端就会进入FIN-WAIT-2(终止等待2)状态,等待服务器发送连接释放报文,服务器将最后的数据发送完毕后,就向客户端发送连接释放报文,服务器就进入了LAST-ACK(最后确认)状态,等待客户端的确认。
​
第四次挥手 客户端收到服务器的连接释放报文后,必须发出确认,ACK=1,ack=w+1,而自己的序列号是seq=u+1,此时,客户端就进入了TIME-WAIT(时间等待)状态,但此时TCP连接还未终止,必须要经过2MSL后(最长报文寿命),当客户端撤销相应的TCB后,客户端才会进入CLOSED关闭状态,服务器端接收到确认报文后,会立即进入CLOSED关闭状态,到这里TCP连接就断开了,四次挥手完成

为什么客户端要等待2MSL?

主要原因是为了保证客户端发送那个的第一个ACK报文能到到服务器,因为这个ACK报文可能丢失,并且2MSL是任何报文在网络上存在的最长时间,超过这个时间报文将被丢弃,这样新的连接中不会出现旧连接的请求报文。

网络层

Internet协议

IP地址逻辑(临时)寻址

IPV4报头

标准长度20字节 -- 可扩展到60字节

第一行

version:版本(4比特),IPV4 为0100,IPV6为0110
​
IHL:ip头部长度(4比特),带参数(0101=5 ,单位是32比特,最大头部就是15*32/8,范围是20字节-60字节,只能以4字节为基础增加。
​
Service Type:服务质量(8比特)对数据标识时使用
QOS --- 服务质量
TOS(type of service) :标记
    1,ip优先级:3+5(000 001 010 011 100 101 110 111)0-7(用前三个比特标记)
    2,DSCP区分服务代码点:6+2,0-63+ECN(显示拥塞通告,顺畅为00拥堵为11)
    3,PHB:逐跳行为(每一跳行为)兼容模式,共有21个分类(IP优先级全部有,DSCP部分有(匹配多少用多少)
    
Packet Length:ip数据包总长度(16比特)

第二行

Identification:标识符(16比特)
​
Flags:标记位(3比特)
R(保留位)
DF(不分片(0或1))
MF(最后一个片段=0(0或1)
​
Fragment Offset:分片偏移(13比特)

第三行

TIme to Live:生存时间(8比特)
路由次数(255-1)
​
Protocol:上层使用协议(8比特)
范围1-255
​
Header Checksum:表头检查码(16比特)

第四行

Source Address:源地址(32比特)

第五行

Destination Address:目标地址(32比特)

第六行

Option:可选项(定义数据传输时进行标识)(默认为0,如果有内容则Option与padding之和必须是32或者32的倍数)
    1,严格选路
    2,松散选路
    3,记录路由
    4,时间戳
Padding:填充项(垫片)

数据链路层

以太网/PPP/HDLC/FR/ATM.....

以太网

在二层主要负责两个功能

1,控制物理层(该层的基本功能)

2,提供MAC地址进行物理寻址(以太网的额外功能)

物理层
总结

上三层为应用程序对数据流量进行加工以及处理的阶段,下四层负责数据的传输

名词解释
1、MTU  最大传输单元  传输层对数据分段的大小
2、封装  数据从高层向低层的加工过程,过程中数据封装每层的头部,不断变大
3、解封装 数据从低层向高层的识别过程,过程中需要读取,删除部分头部,不断变小
4、PDU  -- 协议数据单元  各层数据在封装完成后,对数据的单位称呼
应用层---报头
传输层--段
网络层--包
数据链路层--帧
物理层-- 比特 
5、ARP --地址解析协议  通过对端的一种地址来获取对端另一种地址
AARP 正向ARP -- 已知同一网段的ip地址,通过广播来获取该ip对应的MAC地址
反向ARP --- 已知对端的MAC地址,获取本地的ip地址;
FARP -- 无故ARP  使用AARP,来查询本地的ip地址; --- 用于ip地址的冲突检测
6、DNS-- 域名解析服务  通过域名地址,查询对应的ip地址;主要用于http、https等服务
7、TCP/IP与OSI的区别
1)层数不同  
2)OSI模型的网络层支持所有的网络层协议,TCP/IP的网络层实际被成为internet层,仅支持IP协议;
3)TCP/IP协议栈道支持跨层封装
跨层封装--- 应用层数据直接封装于3层报头或者2层报头;
封装3层报头:同一广播域内的服务型协议--ARP/OSPF..... 使用的设备均为3层设备
封装2层报头:同一交换网络内的二层设备服务型协议---STP 
正常应用程序封装的数据流量不做跨层处理
因此跨层封装的意义在于更快的完成服务型协议间的沟通计算
​
跨层封装时,部分层面的功能,必须由其他层面来辅助完成;
--- 4层的分段、端口号(区分进程)
跨层封装到3层报头时,IPV4报头可以对数据进行分片,之后每片内容填充于报头中,携带到目的地;
3层报头中还存在协议号,用于对标后方所封装的协议0-255,6代表TCP/17代表UDP;
其余数字每一个皆对应一个固定的跨层封装协议
​
2层报头中也有类似的功能来实现分段、进程区分;
主讲以太网:在非跨层封装到2层时,以太网使用第二代数据帧,该帧不具备分片功能,仅存在类型号,可用于区分进程;
故一旦数据被跨层封装到二层时,将启用第一代以太网封装;
第一代封装将数据链路层分为了两层 --->LLC逻辑链路控制子层+MAC介质访问控制子层
LLC层负责分片和提供类型号来区分进程,MAC层用于提供MAC,以及控制物理层;
LLC层 --802.2标准   MAC层-802.3标准
​
数据包转发过程(重点)
源终端设备需要进行数据封装,从高层封装到物理层;过程中基于应用层流量,选择传输层的协议和端口号;基于目标ip地址、目标mac来封装三层和二层头部;
1,本地已知
2,访问网页基于域名,通过dns服务器进行解析
3,终端客户软件提前存储服务器ip地址,直接访问服务器,基于服务器中转来与实际目标通讯
获取目标mac地址方式:使用arp请求通过广播的形式来获取统一广播设备的mac地址
​
交换机的工作原理:当数据帧进入交换机后,先查看数据中的源mac地址,然后将其与对应的入口记录;之后基于目标mac地址,查询本地的mac地址表,若表中存在记录,按照记录对应接口单播转出;若没有记录,需要洪泛流量(除了流量进入的接口外,其他所有接口复制转出)
​
终端访问另一设备时,在过去目标ip地址后,关注目标ip地址是否和本地处于同一网段;若在同一网段,使用arp获取对端mac地址后,单播通讯;当目标ip地址与源头不在同一网段,将封装目标mac地址为本地的网关位置,之后数据进入路由器,由路由器将数据基于路由表路由转发到目标地点;
数据在跨网段传输过程中,源、目ip地址正常不变化,单源。目mac地址在每一个广播域中重新编写,用于该广播域内的物理寻址;
​
mac地址:由48位二进制构成,使用16进制标识;全球唯一,出厂时烧录到芯片中;
​

IPV4地址

由32位二进制构成,点分十进制标识
分类:ABCDE五类
其中ABC为单播地址 --- 唯一计科作为目标ip地址,也可作为源ip地址; --- 只有单播地址可以配置为各个节点的ip;
D类为组播地址,只能作为目标ip地址;

基于ip地址的第一段即可分类:

A 1-126

B 128-191

C 192-223

D 224-239

E 240-255

特殊地址
1,在ABC地址中存在私有ip地址与公有ip地址的区分
公有地址:具有全球唯一性,可以在互联网中通讯,且需要付费使用
私有地址:仅具有本地唯一性,不能在互联网中通讯,无需付费使用
所以,通过私有构建的企业或局域网,访问全部为公有地址的互联网时,必须转换为合法且唯一的互联网公有ip地址;
私有地址:
10.0.0.0/8  
172.16.0.0/16-172.31.0.0/16
192.168.0.0/24-192.168.255.0/24
​
2,127 环回地址,用于测试TCP/IP协议栈道在设备上是否正常
3,全0 0.0.0.0 
    1)在dhcp请求ip地址作为源ip,代表所有地址
    2)在路由表作为缺省路由,代表所有目标
4,全1 255.255.255.255 受限广播地址,在不明确目标ip地址时,发送广播时成为目标ip地址,受到路由器的限制,不能转出单个广播域
5,主机位全0 不是一个具体的ip地址,网络号---代表一个网段
6,主机位全1 不是一个具体的ip地址,该网段的直接广播地址
7,169.254.0.0/16 自动私有地址,本地链路地址;终端在通过dhcp行为多次获取ip地址失败后,本地自动生成的一个ip地址,网络号固定,主机位随机
VLSM
可变长子网掩码 --- 通过延长子网掩码的长度,起到将一个网络号码划分为多个可用网段;--- 子网划分
CIDR
无类域间路由 --- 取相同位,去不同位
将多个网络号合成一个网段号码;
CIDR=子网汇总+超网
子网汇总 --- 汇总后,汇总网段地址的掩码长于或等于主类
超网 --- 汇总后,汇总网段的掩码长度短于主类

静态路由

在默认情况下,路由器仅存在直接网段的路由;
直连路由产生的条件:
1,路由器的接口配置了合法的ip地址
2,同时该接口已经开启,且可以通信
所有非直连网段为该路由器的未知网段,获取未知网段方法:
1,静态路由 --- 管理员手写路由表
2,动态路由 --- 所有路由器运行相同的动态路由协议后,路由器之间沟通、协商、计算自动生成路由表
[Huawei]ip route-static 10.1.1.0 24 192.168.1.2
                        目标网络号    下一跳
下一跳:流量从本地发出后,下一个进入的路由器接口  -- 下一个入口地址(路由器)
[Huawei]ip route-static 10.1.1.0 24 GigabitEthernet 0/0/1
                        目标网络号    出接口
出接口:流量从本地路由器发出的接口号;
在MA网络中建议使用下一跳写法,在点到点网络中建议使用出接口写法;
网络类型
点到点 --- 在一个网段中,只能存在两个节点
MA -- 多路访问 ---在一个网段中,存在节点数量不限制;
​
若在MA网络中使用出接口写法,编辑静态路由;为获取精确的下一跳MAC地址,路由器将使用代理ARP和ICMP重定向;
代理ARP:若一台路由器收到了非本接口直连网段地址的ARP请求,将查询本地路由表,若表中存在到达被请求ip地址的网段的路由,将代理该被请求ip,使用本地的MAC地址进行ARP应答;
ICMP重定向:当路由器发现一个数据包从本地的A口进入后,查询完路由表依然从A口再发出,将告知上一跳设备,本地的下一跳地址来优化转发路径;
基于以上的规则总结:在MA网络中使用出接口写法,数据转发过程繁琐浪费资源,故建议下一跳写法;
​
在点到点网络中若使用下一跳写法:
由于路由器是递归查询路由表的,故下一跳写法生成的路由条目每次查询时,均需要递归到直连路由上,但出接口写法可以不用递归;因此在点到点网络中,由于其不存在代理ARP/ICMP重定向之类规则,故建议出接口写法;
​

静态的扩展配置
1)手工汇总
 当路由器访问多个连续子网(可以汇总成一个网段)时,且全部基于相同的下一跳路径;可以将这些目标网络进行汇总计算后,仅编写到达汇总网段的一条路由即可;--优化路由表,减少路由条目数量,加快查表速度,降低网络延时;
​
2)路由黑洞 --- 汇总的路由网段中包含了网络内实际不存在的网段时,流量将有去无回;造成资源浪费;  主动黑洞--地址设计不合理   被动黑洞--设备关机断电导致
​
3)缺省路由 --一条不限定目标,在路由表中0.0.0.0标识的路由,代表所有网段;路由器查表时,在查询完本地所有的直连、静态、动态路由后若依然没有可达路径,才使用该条目;
[Huawei]ip route-static 0.0.0.0 0 12.1.1.2
4)空接口防环路由--当黑洞路由与缺省路由相遇时,将必然出现环路;
通过在黑洞路由器上,编写到达汇总网段的空接口路由,可以防止环路的产生;
[Huawei]ip route-static 1.1.1.0 24 NULL 0
5)浮动静态路由 --默认手写的静态路由优先级为60;直连路由为0;优先级取值范围0-255;越小越优秀;通过在编写静态路由时,修改优先级,可以实现静态路由备份的效果;
[Huawei]ip route-static 1.1.1.0 24 12.1.1.2 preference 61
6)负载均衡--当访问同一网段时,若存在多条开销相似路径时,可以让设备将流量拆分后延多条路径同时传输,实现带宽叠加的效果;
​
  • 18
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值