前言
随着社会的不断发展,华为数通HCIA技术也越来越重要,本文就介绍了一些华为初级的基础内容。
目录
ARP (Address Resolution Protocol)地址解析协议:
一、OSI(开放式系统互联参考模型):
为什么要设计网络参考模型?【后面补充】
1、定义了一系列的标准化操作流程
2、分层的模型结构,更加利于网络的发展
3、层次之间存在相连接的关系(数据的封装与解封装)
应用层:数据 商家提供商品的
传输层:通信连接 买家和卖家建立买卖关系
网络层:提供了IP寻址 买卖双方的地址信息
数据链路层:提供了物理地址的段内通信 买卖双方的唯一指示信息
物理层:转发数据的物理介质 物品的物流信息
因为网络层和数据链路层是相互关联的,所以必须两者都存在的情况下,才能实现数据的封装。
如果在得知对方IP不得知对方MAC地址时,可以使用ARP协议(地址解析协议)进行MAC地址的获取ARP协议通过发送ARP request报文【广播报文】和ARP reply【单播报文】报文实现。
冲突域:
在一个共享式的网络连接中,会出现电信号冲突。
冲突域的问题一直存在,只能通过技术手段或拓扑建立时尽力的优化。
CSMA/CD(载波侦听多路访问/冲突检测)
1、边听边发
2、先听先发
3、冲突停发
4、随机时间重发
各层功能简介:
-
1)应用层:
为应用程序提供一个标准化的接口来实现对应的网络功能。
-
2)表示层:
能够让不同的系统对同一份数据进行正确的识别和理解,也可以进行加密和压缩。
-
3)会话层:
管理通信的两台设备之间对某个通信的建立、管理和终止,通过进程号区分、隔离不同的应用程序。
补充:
系统会给应用分配一个进程ID。
-
4)传输层:
建立、维护、管理端到端的通信。用于描述一个唯一的端到端的通信。控制传输节奏的快慢,调整数据的排序等等。
补充:
传输层利用报文的五元组来区分不同端到端的通信。
五元组:SIP(源IP地址)+DIP(目的IP地址)+协议类型(TCP、UDP)+Sport(源端口号)+Dport(目的端口号)
源端口号(未知端口号):大于1023的端口都被认为是未知端口号。源端口号的取值就是在未知端口号范围内随机产生,通常从1024开始。
目标端口号(知名端口号):1-1023,通常分配给应用层协议。
-
5)网络层:
定义逻辑地址;实现数据从源到目的地的转发。通俗地说,基于IP地址报文转发,以及选路;解决数据如何在网络上转发。
-
6)数据链路层:
将分组数据封装成帧;在数据链路上实现数据的点到点、或点到多点方式的直接通信;差错检测。通俗地说,解决数据如何在每一条链路上转发。
-
7)物理层:
在媒介上传输0/1的比特流;提供机械的和电气的规约。
二、TCP/IP(互联网的主流参考模型):
三、常见协议标准化组织:(了解)
- IETF(Internet Engineering Task Force)
负责开发和推广互联网协议(特别是构成TCP/IP协议族的协议)的志愿组织,通过RFC发布新的或者取代老的协议标准。
- IEEE(Institute of Electrical and Electronics Engineers)
IEEE制定了全世界电子、电气和计算机科学领域30%左右的标准,比较知名的有IEEE802.3(Ethernet)、IEEE802.11(WiFi)等。
- ISO(International Organization for Standardization)
在制定计算机网络标准方面,ISO是起着重大作用的国际组织,如OSI模型,定义于ISO/IEC 7498-1。
四、标准协议:
1)应用层(协议数据单元为数据【Data】):
每一种应用层协议在传输层都有一个或多个已分配的端口号,让接收主机了解该数据是访问哪种应用层协议的。
补充:
- HTTP【Hyper Text Transfer Protocol 超文本传输协议】:
是互联网上应用最为广泛的一种网络协议。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。
解释如下图所示:
- HTTPS【Hypertext Transfer Protocol Secure 超文本传输安全协议】:
在HTTP的基础上通过传输加密(SSL)和身份验证保证传输过程的安全性
- DNS(省略)
- SMTP【Simple Mail Transfer Protocol 简单邮件传输协议 】
- POP3【Post Office Protocol-Version 3 邮件协议版本3 】
- Telnet【远程终端协议 】:
数据网络中提供远程登录服务的标准协议。 Telnet为用户提供了在本地计算机上完成远程设备工作的能力。通俗地说,远程控制Web服务器。
解释如下图所示:
用户通过Telnet客户端程序连接到Telnet服务器。用户在Telnet客户端中输入命令,这些命令会在服务器端运行,就像直接在服务端的控制台上输入一样。
- SNMP【Simple Network Management Protocol 简单网络管理协议】
- FTP【File Transfer Protocol 文件传输协议 】:
是一个用于从一台主机传送文件到另一台主机的协议,用于文件的“下载”和“上传”,它采用C/S(客户端/服务器【Client/Server】)架构,其中21端口控制通道,20端口数据通道。
解释如下图所示:
FTP客户端:提供本地设备对远程服务器的文件进行操作的命令。用户在PC上通过应用程序作为FTP Client,并与FTP服务器建立连接后,可以对FTP Server上的文件进行操作。
FTP服务器:运行FTP服务的设备。提供远程客户端访问和操作的功能,用户可以通过FTP客户端程序登录到服务器上,访问设备上的文件。
- TFTP【Trivial File Transfer Protocol 简单文件传输协议】
- DHCP【Dynamic Host Configuration Protocol 动态主机配置协议】
- SSH【SSH File Transfer Protocol SSH文件传输协议 也称SFTP Secret File Transfer Protocol 安全文件传送协议】
- BGP【Border Gateway Protocol 边界网关协议】
- 个人习惯喜欢用英语记忆哈。
2)传输层(协议数据单元为段【Segment】):
【后面补充】
端口:取值范围(0-65535)源端口(1024-65535)目标端口(0-1023)
我个人的理解如下:
TCP:面向连接。通信过程中需要有回馈机制,保证可靠的传递;以及流量控制机制,保证发送的效率。【可靠性高】
UDP:无连接、无反馈,即使有反馈也是数据的反馈而不是确认收到,无法保证可靠传递。【效率高】
TCP和UDP报文格式如下图:
1---TCP的建立 - 三次握手(个人笔记):
TCP使用序列号和确认序列号字段实现数据的可靠和有序传输。
***2---TCP的窗口滑动机制:
TCP通过滑动窗口机制来控制数据的传输速率。
【后面补充理解】
***TCP滑动窗口机制:
1、发送报文时,会携带win参数,告知对方本端可以接受的最大报文单位是多少
2、如果对方发送的报文数量远超出本端可以接受的最大单位值,则本端直接将可以接受的报文处理,再使用ack来告知对方需要接受下一个报文是多少
3---TCP的关闭 - 四次挥手:
当数据传输完成,TCP需要通过“四次挥手”机制断开TCP连接,释放系统资源。
也可这样理解:
重要提示信息(理解):
TCP三次握手建立双向连接。
SYN:同步位 作用:当同步位置位为1时,代表我要向你请求建立TCP连接
ACK:确认位 作用:当确认位置位为1时,代表该报文具有确认性质
TCP传输数据:
确认号=上一个报文的序列号+字节数大小
序列号=上一个报文的确认号
TCP四次挥手:
四次挥手第一次没有加一是因为在请求断开连接,确认上一条报文
补充:
- UDP【User Datagram Protocol 用户数据报协议】
- TCP【Transmission Control Protocol 传输控制协议】
- OSPF【Open Shortest Path First 开放最短路径优先 】:
是一个内部网关协议(Interior Gateway Protocol 简称IGP) 用于在单一自治系统内决策路由。
3)网络层(协议数据单元为包【Packet】):
IP V4报文格式(重要):
解释:
TTL:生存时间,防止报文在网路中转发时形成环路无限转发 当三层设备接收到该报文时,TTL值-1,当TTL=0时,丢弃该报文 TTL值默认255,常见值有64,128,255。
环路:报文在网络中被无限转发,无法到达目的地。
FLAG(标志位):
R【Reserved】:保留
DF【Don't Fragment】:不分片位。当DF=1代表不允许对此数据包进行分片;当DF=0代表可以分片。
MF【More Fragment】:当MF=1代表我是分片,但不是最后一个分片;当MF=0代表我是分片,并且是最后一个分片。
4)数据链路层(协议数据单元为帧【Frame】):
扩展内容:
基于IP网络的所有数据,都必须封装在数据帧里为单位进行转发。
链路一般分为两种:
- 点到点链路:仅支持两个接口的链路,如PPP、HDLC,无需链路层地址区分不同的接口。
- 广播型链路(MA多路访问):允许一条链路上存在两个以上的接口,此时需要区别不同的接口,那么规定以太网接口都要有一个全球唯一,但链路有效的Mac地址。
MAC (Media Access Control)地址在网络中唯一标识一个网卡,每个网卡都需要且会有唯一的一个MAC地址。
ARP (Address Resolution Protocol)地址解析协议:
根据已知的IP地址解析获得其对应的MAC地址。
以此图简述ARP工作原理:
Step 1: 在发送数据前,设备会先查找ARP缓存表。 如果缓存表中存在对方设备的MAC地址,则直接采用该MAC地址来封装帧,然后将帧发送出去。如果缓存表中不存在相应信息,则通过ARP来获取。
Step 2: 主机1通过发送ARP Request报文来获取主机2的MAC地址。 由于不知道目的MAC地址,因此ARP Request报文内的目的端MAC地址为0。
Step 3: ARP Request是广播数据帧,因此交换机收到后,会对该帧执行泛洪操作。
Step 4: 所有的主机接收到该ARP Request报文后,都会检查它的目的端IP地址字段与自身的IP地址是否匹配。 主机2发现IP地址匹配,则会将ARP报文中的发送端MAC地址和发送端IP地址信息记录到自己的ARP缓存表中。
Step 5: 主机2通过发送ARP Reply报文来响应主机1的请求。 此时主机2已知主机1的MAC地址,因此ARP Reply是单播数据帧。
Step 6: 交换机收到该单播数据帧后,会对该帧执行转发操作。
Step 7: 主机1收到ARP Reply以后,会检查ARP报文中目的端IP地址字段是否与自己的IP地址匹配。 如果匹配,会将ARP报文中的发送端MAC地址和发送端IP地址信息记录到自己的ARP缓存表中。
通俗理解ARP工作原理:
ARP请求报文:在ARP头部中,目标MAC地址未知,但是为了保证报文的完整性,所以该字段全00填充;在帧头部中,目标MAC地址依然未知,但是我们要尽量确保该广播域内所有主机都能收到ARP请求,因为会有一个正确的目的地址回复,所以使用全FF广播地址作为目的MAC地址。
非目标主机:收到该请求帧以后,因为目标MAC地址是广播地址,所以非目标主机会接收该数据帧并剥离二层头部,发现ARP头部的目标IP地址不是自己,则丢弃。
目标主机:接受到该ARP请求帧以后,因为目标MAC地址是广播地址,所以会接收该数据帧并且剥离二层头部,发现ARP头部的目标IP地址是自身IP地址,则主机会将ARP请求中源IP源MAC地址记录到自身的ARP缓存表中。目的:为了方便以后通信。
ARP应答报文:就是将请求报文中的源目地址进行调换。当发送ARP请求的主机接收到ARP响应以后,也会记录下ARP响应报文中的源IP源MAC,放到自己的ARP缓存表,此时双方都知道了对方的源目MAC地址、源目IP地址。
补充:
为了防止ARP表项过大,主机在生成ARP条目后,会隐藏运行一个1200s的定时器,如果1200s内没有收到该条目主机发来的数据帧,则删除该设备的ARP表项。
ARP中间人攻击:
防范1、ARP绑定。由管理员手动绑定目标IP地址和目标MAC地址,绑定后的条目显示为静态ARP。静态ARP无法被ARP应答报文覆盖。
防范2、杀毒软件。当软件检测到某主机发送大量的无请求回答,则该应答全被丢弃。
免费ARP:
1、用于地址冲突检测。当接口IP地址发生改变的时候就会主动发送免费的ARP报文。
2、用于刷新其他主机的ARP缓存。在接口MAC地址变更时,发送免费ARP,用于刷新链路上其他接口的ARP缓存。
总结
以上就是今天所讲的内容啦,仅仅介绍了数通基础的内容。