架构师之路(十五)计算机网络(网络层协议)

前置知识(了解):计算机基础。

作为架构师,我们所设计的系统很少为单机系统,因此有必要了解计算机和计算机之间是怎么联系的。局域网的集群和混合云的网络有啥区别。系统交互的时候网络会存在什么瓶颈。

ARP协议

地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址

主机A的IP地址为192.168.1.1,MAC地址为0A-11-22-33-44-01;

主机B的IP地址为192.168.1.2,MAC地址为0A-11-22-33-44-02;

当主机A要与主机B通信时,地址解析协议可以将主机B的IP地址(192.168.1.2)解析成主机B的MAC地址,以下为工作流程:

第1步:根据主机A上的路由表内容,IP确定用于访问主机B的转发IP地址是192.168.1.2。然后A主机在自己的本地ARP缓存中检查主机B的匹配MAC地址。

第2步:如果主机A在ARP缓存中没有找到映射,它将询问192.168.1.2的硬件地址,从而将ARP请求帧广播到本地网络上的所有主机。源主机A的IP地址和MAC地址都包括在ARP请求中。本地网络上的每台主机都接收到ARP请求并且检查是否与自己的IP地址匹配。如果主机发现请求的IP地址与自己的IP地址不匹配,它将丢弃ARP请求。

第3步:主机B确定ARP请求中的IP地址与自己的IP地址匹配,则将主机A的IP地址和MAC地址映射添加到本地ARP缓存中。

第4步:主机B将包含其MAC地址的ARP回复消息直接发送回主机A。

第5步:当主机A收到从主机B发来的ARP回复消息时,会用主机B的IP和MAC地址映射更新ARP缓存。本机缓存是有生存期的,生存期结束后,将再次重复上面的过程。主机B的MAC地址一旦确定,主机A就能向主机B发送IP通信了。

ICMP协议

ICMP协议是一个网络层协议。一个新搭建好的网络,往往需要先进行一个简单的测试,来验证网络是否畅通;但是IP协议并不提供可靠传输。如果丢包了,IP协议并不能通知传输层是否丢包以及丢包的原因。所以我们就需要一种协议来完成这样的功能–ICMP协议。

ICMP协议的功能主要有:1. 确认IP包是否成功到达目标地址 2. 通知在发送过程中IP包被丢弃的原因

我们需要注意几点:

1.ICMP是基于IP协议工作的,但是它并不是传输层的功能,因此仍然把它归结为网络层协议

2. ICMP只能搭配IPv4使用,如果是IPv6的情况下, 需要是用ICMPv6

我们用的ping、 tracert、pathping 操作中就包括了相应请求(类型字段值为8)和应答(类型字段值为0)ICMP报文。过程:一台主机向一个节点发送一个类型字段值为8的ICMP报文,如果途中没有异常(如果没有被路由丢弃,目标不回应ICMP或者传输失败),则目标返回类型字段值为0的ICMP报文,说明这台主机存在。

DHCP协议

DHCP的全称是Dynamic Host Configuration Protocol, 即动态主机配置协议, 它的特点是能够自动设置IP地址,并实行统一的管理。

我们有两种为主机设置IP地址的方式:1.管理员手动设置主机的IP地址 2.通过DHCP自动设置IP地址 

DHCP是一种即插即用的协议(plug-and-play protocol)。实际上,我们在生活中经常享受着DHCP带来的便利:我们有时会携带笔记本电脑或手机到公共场所里,例如图书馆,并且通过WiFi连上一个陌生的子网,但是我们并没有做重新为主机配置IP地址的工作! 

DHCP服务器的工作流程

  • DHCP服务器管理着一个包含一系列IP地址的地址池
  • 每当一台新的主机加入时,DHCP服务器就从其当前可用地址池中分配一个任意的地址给它
  • 而每当一台主机离开的时候,其IP地址就被回收到地址池中

IP路由协议

IP路由协议是网络协议里面的一个重要组成部分,一般工作在第三层(即网络层),常见的设备是路由器。从A到B网络中路由如何选择:每个路由器都有一张路由表。路由器通过查询分组首部字段的目的地址,通过路由表,获得该分组应该转发的输出端口。路由器由此完成转发功能。后面我们将深入看到路由器的内部,实际上这个查询功能是由每个输入端口完成,每个输入端口都有路由表的影子副本,由此可以实现多个查询并行。

那么路由表是如何配置的呢?这是由网络中的路由选择协议决定。(大致可以分为:静态路由。静态路由由管理员手动添加配置到路由器的路由表中,其优先级最高。动态路由:多台路由器之间通过动态路由协议,协商获取,不同的动态协议获得的路由表表项优先级也不同。)静态路由配置方便,对系统要求低,适用于拓扑结构简单并且稳定的小型网络。缺点是不能自动适应网络拓扑的变化,需要人工干预。动态路由协议有自己的路由算法,能够自动适应网络拓扑的变化,适用于具有一定数量三层设备的网络。缺点是配置对用户要求比较高,对系统的要求高于静态路由,并将占用一定的网络资源。

常见的动态路由协议包括RIP、OSPF、IS-IS、IGRP、EIGRP、BGP等。RIP、OSPF、IS-IS、IGRP、EIGRP是内部网关协议(IGP),适用于单个ISP的统一路由协议的运行,一般由一个ISP运营的网络位于一个AS(自治系统)内,有统一的ASnumber(自治系统号)。BGP是自治系统间的路由协议,是一种外部网关协议,多用于INTERNET上,在不同运营商之间交换路由信息,在某些大型的企业的内部网络里,有时也会用到BGP路由协议。下面为大家介绍各种路由协议的特性。

RIP路由协议  RIP是Routing Information Protocol(路由信息协议)的简称。它是一种较为简单的内部网关协议IGP(Interior GatewayProtocol),主要用于规模较小的网络中,比如校园网以及结构较简单的地区性网络。对于更为复杂的环境和大型网络,一般不使用RIP。RIP是一种基于距离矢量(Distance-Vector)算法的协议,它通过UDP报文进行路由信息的交换,使用的端口号为520。

OSPF路由协议  OSPF(Open Shortest PathFirst)是IETF组织开发的一个基于链路状态的内部网关协议。目前针对IPv4协议使用的是OSPF Version2(RFC2328);针对IPv6协议使用OSPF Version 3(RFC2740)。

BGP路由协议   BGP是“边界网关协议(Border GatewayProtocol)”的缩写,处理各ISP之间的路由传递。BGP是一种外部网关协议(EGP),与OSPF、RIP等内部网关协议(IGP)不同,其着眼点不在于发现和计算路由,而在于控制路由的传播和选择最佳路由。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/346739.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

水雾发生器走过路过不要错过

一、细水雾灭火机理与结构特征如下: 瓦斯输送管道细水雾发生器,是根据细水雾灭火机理及煤矿瓦斯的燃烧特性而进行研制的。其灭火机理: 一是冷却,细水雾颗粒容易气化,大量吸热,迅速降温,终止燃烧…

【JavaWeb】会话管理 cookie session 三大域对象总结

文章目录 会话管理一、Cookie1.1 Cookie的使用1.2 Cookie的时效性1.3 Cookie的提交路径 二、Session2.1 HttpSession的使用2.2 HttpSession时效性 三、三大域对象3.1 域对象概述3.2 域对象的使用 总结 会话管理 HTTP是无状态协议 无状态就是不保存状态,即无状态协议(stateless)…

解决Sublime Text V3.2.2中文乱码问题

目录 中文乱码出现情形通过安装插件来解决乱码问题 中文乱码出现情形 打开一个中文txt文件,显示乱码,在File->Reopen With Encoding里面找不到支持简体中文正常显示的编码选项。 通过安装插件来解决乱码问题 安装Package Control插件 打开Tool->…

【数据结构与算法】栈(Stack)之 浅谈数组和链表实现栈各自的优缺点

文章目录 1.栈介绍2. 哪种结构实现栈会更优?3.栈代码实现(C语言) 往期相关文章: 线性表之顺序表线性表之链表 1.栈介绍 栈是一种特殊的线性表,只允许在栈顶(Top)进行插入和删除元素操作&#…

【项目日记(四)】第一层: 线程缓存的具体实现

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:项目日记-高并发内存池⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你做项目   🔝🔝 开发环境: Visual Studio 2022 项目日…

Unity中URP下获取每一个额外灯数据

文章目录 前言一、我们先来看一下 SimpleLit 中的调用二、获取额外灯索引1、非移动平台2、非GLES平台3、大多数平台 三、获取额外灯数据 前言 在上一篇文章中,我们知道了URP下是怎么获取额外灯数量的。 Unity中URP下获取额外灯数量 在这篇文章中,我们…

场内基金出货是什么意思?出货和洗盘有什么区别?

场内基金出货是股市中常见的一种操作策略,指股市中的投资大户或者机构大量或者批次买入某只股票,并散发利好该股票的消息,导致该股票在短时间内股价升高,从而吸引投资散户购买该股票。等到股价上升到一定的阶段时,庄家…

nextjs中beforePopState使用

在某些情况下,希望监听popstate并在路由器对其进行操作之前执行某些操作。可以使用beforePopState。 在Next.js中,beforePopState是一个可选的生命周期函数,用于在浏览器的历史记录发生更改之前执行一些操作。具体来说,beforePopS…

两千字讲明白java中instanceof关键字的使用!

写在开头 在过往的内容中,我们讲了不少的Java关键字,比如final、static、this、super等等,Java中的关键字非常之多,下图是整理的关键字集合 而我们今天要学习的就是其中的instanceof关键字! instanceof的定义 instanc…

k8s安全机制

安全机制:k8s的安全机制,分布式集群管理工具,就是容器编排。 安全机制的核心:API SERVER作为整个集群内部通信的中介,也是外控控制的入口。所有的安全机制都是围绕api server来进行设计: 请求api资源&#…

数据结构·单链表

不可否认的是,前几节我们讲解的顺序表存在一下几点问题: 1. 中间、头部的插入和删除,需要移动一整串数据,时间复杂度O(N) 2. 增容需要申请新空间,拷贝数据,释放旧空间。会有不小的消耗 3. 增容一般是2倍的增…

MySQL安装及可视化工具SQLyog下载

编程如画,我是panda! 最近学习Web开发的时候要用到数据库,一开始下载的ZIP版本的,还得修改配置文件,挺麻烦的,后来发现可以直接使用msi版的安装包疯狂next,所以就出一期教程。 前言 MySQL 是一…

链表--104. 二叉树的最大深度/medium 理解度A

104. 二叉树的最大深度 1、题目2、题目分析3、复杂度最优解代码示例4、适用场景 1、题目 给定一个二叉树 root ,返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1: 输入:root [3,9,20,null,n…

22款奔驰GLS450升级香氛负离子车载香薰功能

奔驰原厂香氛系统激活原车自带系统,将香气加藏储物盒中,通过系统调节与出风口相结合,再将香味传达至整个车厢,达到净化车厢空气的效果,让整个车厢更加绿色健康,清新淡雅。星骏汇小许Xjh15863 产品功能&…

Vue3+Vite使用Puppeteer进行SEO优化(SSR+Meta)

1. 背景 【笑小枫】https://www.xiaoxiaofeng.com上线啦 资源持续整合中,程序员必备网站,快点前往围观吧~ 我的个人博客【笑小枫】又一次版本大升级,虽然知道没有多少访问量,但我还是整天没事瞎折腾。因为一些功能在Halo上不太好实…

MES管理系统计划排产有哪些重要作用

在当今制造业中,MES管理系统解决方案已经成为提高生产效率、优化资源利用以及提升企业整体运营水平的关键工具。尤其是在生产计划排产这一核心环节,MES管理系统发挥着无可替代的作用。通过精准的计划和调度,MES管理系统帮助企业实现生产过程的…

SAP EXCEL上传如何实现指定读取某一个sheet页(ALSM_EXCEL_TO_INTERNAL_TABLE)

如何读取指定的EXCEL sheet 页签,比如要读取下图中第二个输出sheet页签 具体实现方法如下: 拷贝标准的函数ALSM_EXCEL_TO_INTERNAL_TABLE封装成一个自定义函数ZCALSM_EXCEL_TO_INTERNAL_TABLE 在自定义函数导入参数页签新增一个参数SHEET_NAME 在源代码…

【word密码】Word 文档设置了只读为什么还能编辑?

有些朋友可能会遇到这种疑问,为什么我的Word文档设置了只读模式,还是可以编辑的,这是什么原因呢? 其实是因为大部分的只读模式,设置完成之后都是可以编辑的,但是当我们进行保存的时候就会发现,…

【边缘计算】TA的基本概念,以及TA的挑战和机遇

大家好,我是全栈小5,欢迎阅读文章! 此篇是【话题达人】序列文章,这一次的话题是《边缘计算的挑战和机遇》 文章将以博主的角度进行讲述,理解和水平有限,不足之处,望指正。 目录 背景基本概念挑战…

软件游戏提示msvcp140.dll丢失的解决方法,全面分析msvcp140.dll文件

msvcp140.dll是Microsoft Visual C 2015 Redistributable的一部分,它包含了许多用于运行程序的函数和类库。当这个文件丢失或损坏时,依赖于该组件的应用程序可能无法正常启动,系统会弹出错误提示,告知用户找不到msvcp140.dll文件。…