计算机底层网络协议

### 01.ARP(地址解析协议)


- 基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。在每台安装有TCP/IP协议的电脑或路由器里都有一个ARP缓存表,表里的IP地址与MAC地址是一对应的。
- 当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到就知道目标MAC地址为(00-BB-00-62-C2-02),直接把目标MAC地址写入帧里面发送就可;如果在ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个 **广播(ARP request)**,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.38.11的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应(ARP response):“192.168.38.11的MAC地址是(00-BB-00-62-C2-02)”。这样,主机A就知道主机B的MAC地址,它就可以向主机B发送信息。同时它还更新自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可。**ARP缓存表采用老化机制**,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。
- 当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为ARP代理(ARP Proxy)。

### 02.ICMP(互联网控制消息协议)


- 它 **用于TCP/IP网络中发送控制消息**,提供可能发生在通信环境中的各种问题反馈,通过这些信息,令管理者可以对所发生的问题作出诊断,然后采取适当的措施解决。它与传输协议最大的不同:它一般不用于在两点间传输数据,而常常 **用于返回的错误信息或是分析路由**。
- ICMP控制的内容包括但不仅限于:echo响应(ping)、目标网络不可达、目标端口不可达、禁止访问的网络、拥塞控制、重定向、TTL超时...


### 03.路由选择协议


- 路由选择协议分为:静态的和动态的。Internet中使用的是动态路由选择协议,在Internet的概念中,将整个互联网划分为许多个小的**自治系统(AS)**。AS的最主要的特征:**一个AS对其他AS表现出的是一个单一 和一致的路由选择策略**。
- 由于AS的存在,路由选择协议又分为两种:
    - 内部网关协议(IGP):即在一个AS内部使用的路由选择协议,而这与互联网中其他AS选用什么路由协议无关。比如:OSPF
    - 外部网关协议(EGP):若源主机和目的主机不再同一个AS中,就需要使用一种协议将路由选择信息传递到另一个AS中,这就是EGP。比如:BGP。


### 04.OSPF(开放式最短路径优先)


- OSPF属于内部网关协议(IGP)的一种,使用Dijkstra提出的**最短路径算法**。
- OSPF提出了“区域(Area)”的概念,一个网络可以由单一区域或者多个区域组成。其中,一个特别的区域被称为骨干区域(Backbone Area),该区域是整个OSPF网络的核心区域,并且所有其他的区域都与之直接连接。所有的内部路由都通过骨干区域传递到其他非骨干区域。所有的区域都必须直接连接到骨干区域,如果不能创建直接连接,那么可以通过虚拟链路(Virtual-link)和骨干区域创建虚拟连接。[博客](https://github.com/yangchong211/YCBlogs)
- 划分区域的优点:
    - 将洪泛法的范围限制在一个区域中。
    - 减少每个区域内部路由信息交换的通信量。  
- OSPF使用的是**分布式链路状态协议**,使用 **洪泛法**向该路由器所有的相邻路由器发送信息。最终整个区域的所有路由器都得到一个这个信息的副本。这个副本就是 **链路状态数据库(LSDB)用来保存当前网络拓扑结构**,路由器上属于同一区域的链路状态数据库是相同的(属于多个区域的路由器会为每个区域维护一份链路状态数据库)。
- OSPF使用 **“代价(Cost)”**作为路由度量。
- 只有当链路发生变化时才会更新信息。如果同一个目的网络有多条路径,OSPF协议可以进行 **负载均衡**。

### 05.BGP(边界网关协议)


- 由于BGP是工作在AS之间的协议,并且各个AS的情况复杂,所以 **BGP只是力求找到一个可以到达目的网络且比较好的路由,而并不是寻找一条最佳路由**。每一个AS都应该有一个**“BGP发言人“**,一般来说,两个BGP发言人是通过一个共享网络连接在一起的,BGP发言人往往是**BGP边界路由**,但也可以不是。[博客](https://github.com/yangchong211/YCBlogs)
- 一个BGP发言人与其他AS的BGP发言人要交换路由信息,首先要建立TCP连接,然后在此连接上交换BGP报文以建立BGP会话。当BGP发言人交换了路由信息后,就构造自治系统连通图,最后通过该图来进行路由选择。

### 06.DHCP(动态主机设置协议)


- DHCP是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:
    - 用于内部网络或网络服务供应商自动分配IP地址给用户
    - 用于内部网络管理员作为对所有电脑作中央管理的手段
- **动态主机设置协议(DHCP)是一种使网络管理员能够集中管理和自动分配IP网络地址的通信协议**。在IP网络中,每个连接Internet的设备都需要分配唯一的IP地址。DHCP使网络管理员能从中心结点监控和分配IP地址。当某台计算机移到网络中的其它位置时,能自动收到新的IP地址。
- DHCP使用了 **租约** 的概念,或称为计算机IP地址的有效期。租用时间是不定的,主要取决于用户在某地连接Internet需要多久,这对于教育行业和其它用户频繁改变的环境是很实用的。通过较短的租期,DHCP能够在一个计算机比可用IP地址多的环境中动态地重新配置网络。DHCP支持为计算机分配静态地址,如需要永久性IP地址的Web服务器。

### 07.NAT(地址转换协议)


- NAT是一种 **在IP封包通过路由器或防火墙时重写来源IP地址或目的IP地址的技术**。这种技术被普遍使用在有多台主机但只通过一个公有IP地址访问因特网的私有网络中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值