学习计算机你应该知道的网络知识

前言

网络作为嵌入式学习的必备知识,很多嵌入式学习者还没有真正的去系统的了解过网络这个知识,刚好最近阿斌也在学习网络这块的知识,整理了一些网络笔记,希望对大家的学习能有帮助

那下面就跟着阿斌一起看看计算机网络的相关知识吧!本文较长,建议点赞收藏反复观看!

本文阿斌将会从以下几个方面为大家系统的介绍计算机的网络:

1、什么是计算机网络?

2、网络的分类

3、七层网络模型

4、IP地址

5、子网掩码

6、TCP/IP协议

7、三次握手四次挥手


什么是计算机网络?

计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。–(定义来源于百度百科)

看完这个官方定义可能大家还不太清楚计算机网络到底是个什么东西,那下面阿斌就用几个关键词来定义一下计算机网络吧!计算机网络就是相互连接的、以资源共享为目的的、自治的计算机集群。

首先要明白计算机网络是集群性质的,一个电脑不叫网络,多台能够自治(独立工作)的电脑的互联才能组成网络!在网络中一个最重要的也是网络的核心那就是多机共享,正是人们基于共享才出现了网络。

网络的分类

了解了计算机网络的定义,之后再了解一下计算机网络的分类,总的来说可以按照以下5点进行分类:网络的覆盖范围、网络传输方式、拓扑结构、网络协议、传输介质。

1、按照覆盖范围分

网络的覆盖范围,又可以分为:局域网、城域网和广域网。

局域网英文是 LAN ( Local Area Network),Local,本地的、当地的。自己安装过网线或者路由器的应该都知道路由器上有个LAN口,大家在家庭中的网络连接一般都是PC —> 无线路由器 ---->(LAN)光猫(WAN)—> ISP —> Internet GW —> Internet,一般情况下,这样链接在同一个路由器下的各电脑就组成了一个简单的局域网。

但是,若路由器下连接有可网管的高级交换机,这类交换机可划分VLAN(虚拟局域网),这样有的电脑即使在同一个路由器下,也可能分别属于不同的VLAN,即不同局域网。

局域网规模相对较小,通信线路较短,覆盖区域的直径通常在几百米到几公里之间。城域网是指覆盖一个城市的计算机网络。广域网是指覆盖一个国家甚至整个地球的更大的网络。

虽然局域网、城域网和广域网这些术语是针对网络的覆盖范围而提出的,但它们更有别于网络建设技术。

2、网络的传输方式分

网络按照传输方式分可分为广播式网络和点对点网络。

广播式网络在网络中只有一个单一的通信信道,由这个网络中所有的主机所共享。即多个计算机连接到一条通信线路上的不同分支点上,任意一个节点所发出的报文分组被其他所有节点接受。发送的分组中有一个地址域,指明了该分组的目标接受者和源地址。
https://f11.baidu.com/it/u=1171636252,2312538932&fm=173&app=49&f=JPEG?w=414&h=565&s=5AAC3C624BB2C9EB16F595CE0000C0B1&access=215967316

纯点对点网络没有客户端或服务器的概念,只有平等的同级节点,同时对网络上的其它节点充当客户端和服务器。这种网络设计模型不同于客户端-服务器模型,在客户端-服务器模型中通信通常来往于一个中央服务器。
(https://f11.baidu.com/it/u=943720333,2391930586&fm=173&app=49&f=JPEG?w=406&h=550&s=4AAA3C624BBFC9EB1ED5B0CA000080B1&access=215967316)

大家在学习C语言时可能听说过P2P这样的网络结构,P2P网络的一个重要的目标就是让所有的客户端都能提供资源,包括带宽,存储空间和计算能力。P2P网络的分布特性通过在多节点上复制数据,也增加了防故障的健壮性,并且在纯P2P网络中,节点不需要依靠一个中心索引服务器来发现数据。在后一种情况下,系统也不会出现单点崩溃。

3、按照拓扑结构分

网络拓扑结构就是指用传输媒体把计算机等各种设备互相连接起来的物理布局,网络拓扑结构可按形状分类,分别有:星型、环型、总线型、树型、总线/星型和网状型拓扑结构。
![](https://iknow-pic.cdn.bcebos.com/6609c93d70cf3bc799055588dc00baa1cd112a48

1、星型拓扑
星型是结构是一个中心,多个分节点。它结构简单,连接方便,管理和维护都相对容易,而且扩展性强。网络延迟时间较小,传输误差低。中心无故障,一般网络没问题。中心故障,网络就出问题,同时共享能力差,通信线路利用率不高。

2、总线拓扑结构
总线拓扑结构所有设备连接到一条连接介质上。总线结构所需要的电缆数量少,线缆长度短,易于布线和维护。多个结点共用一条传输信道,信道利用率高,但不找诊断故障。

3、环形拓扑网络
环形拓扑网络是节点形成一个闭合环。工作站少,节约设备。当然,这样就导致一个节点出问题,网络就会出问题,而且不好诊断故障。

4、树形拓扑
树形拓扑从总线拓扑演变而来,形状像一棵倒置的树,顶端是树根,树根以下带分支,每个分支还可再带子分支,树根接收各站点发送的数据,然后再广播发送到全网。好扩展,容易诊断错误,但对根部要求高。

5、网形拓扑
应用的最广泛,它的优点是不受瓶颈问题和失效问题的影响,一天线路出问题,可以做其他线路,但太复杂,成本高。

6、混合式拓扑结构
是将上面两种或多种共同使用。如用的多有星总线型、星环型等。
优点:可以对网络的基本拓扑取长补短。
缺点:网络配置挂包那里难度大。

4、按照网络协议分

首先大家要明白网络协议是什么,通信协议就是双方共同遵守的规则或约定。不同的网络采用不同的通信协议,如局域网中的以太网采用CSMA协议,广域网中的分组交换网采用X.25协议,Internet网采用TCP/IP 协议。

5、按照传输介质分

传输介质就是通信线路。目前常用同轴电缆、双绞线、光纤、卫星、微波等有线或无线传输介质,相应的网络就分别称为同轴电缆网、双绞线网、光纤网、卫星网、无线网等。

七层网络模型

OSI七层模型,OSI为(Open System interconnect)的缩写,自上而下分别是应用层、表示层、会话层、传输层、网络层、数据链路层、物理层,这些知识大家在C语言或者计算机基础里应该也已经有所学习了。下面就分别来一起看一下这七层网络模型吧!

1)物理层(Physical Layer)
首先,物理层定义了所有电子及物理设备的规范,为上层的传输提供了一个物理介质数据的单位为比特(bit)。物理层虽然处于最底层,却是整个开放系统的基础。进一步讲就是,物理层的作用是要尽可能的屏蔽掉计算机网络中的硬件设备和传输媒体的差异,毕竟世界上有那么多硬件设备制造商,我们上网使用的手段很多,硬件当然是种类繁多了。物理层要做的就是尽可能屏蔽掉这种差异,这样就可以使数据链路层只需要考虑如何完成本层次的协议和服务,而不必考虑网络具体的传输媒体是什么。

2)数据链路层(Data Link Layer)
数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。

3)网络层(Network Layer)
网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。它提供的服务使传输层不需要了解网络中的数据传输和交换技术。

4)传输层(Transport Layer)
传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输。在这一层,信息传送的协议数据单元称为段或报文。,网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口。

5)会话层
会话层管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步。

6)表示层
表示层对上层数据或信息进行变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。表示层的数据转换包括数据的加密、压缩、格式转换等。

7)应用层
为操作系统或网络应用程序提供访问网络服务的接口。

IP地址和硬件地址

所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址。按照TCP/IP协议规定,IP地址用二进制来表示,每个IP地址长32bit,比特换算成字节,就是4个字节。 IP地址是IP数据报在网络层及以上各层使用的一种逻辑地址,硬件地址是物理层和数据链路层使用的地址。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZpE74A1W-1650714589441)(images/b49269c8537520cdadc2b04d5b9fa2b7.jpg)]
从上图我们可以看出:在 IP 层抽象的互联网上只能看到 IP 数据报。图中的 IP1→IP2 表示从源地址 IP1 到目的地址 IP2 两个路由器的 IP 地址并不出现在 IP 数据报的首部中,路由器只根据目的站的 IP 地址的网络号进行路由选择。Internet 上的每台主机(Host)都有一个唯一的IP地址。IP协议就是使用这个地址在主机之间传递信息,这是Internet 能够运行的基础。

硬件地址就是我们常说的MAC地址,这个地址就像你的身份证一样是世界上唯一的,在设备出厂的时候就打在设备的芯片里了,是按照国际上的标准和规定统一的格式,这个地址是永远不变的,同一型号的两个设备硬件地址也不同,局域网内有多种寻找硬件地址的方法,而路由有一个最大的特点就是通过广播把他下面的所有PC机或者是交换机,或者是路由器的MAC自动加入到他的分配表里面,这样才去给他们分配IP地址,是先获取其实际的MAC地址后,按MAC地址去分配IP地址,路由有自动学习的功能。

子网掩码

子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩。它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。

子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在广域网上。

TCP/IP

TCP/IP 是供已连接因特网的计算机进行通信的通信协议。当应用程序希望通过 TCP 与另一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在双方“握手”之后,TCP 将在两个应用程序之间建立一个全双工 (full-duplex) 的通信。

TCP/IP 意味着 TCP 和 IP 在一起协同工作。TCP 负责应用软件(比如你的浏览器)和网络软件之间的通信,IP 负责计算机之间的通信。TCP 负责将数据分割并装入 IP 包,然后在它们到达的时候重新组合它们,IP 负责将包发送至接受者。

TCP/IP的标准化流程大概分为以下几个阶段:

①.互联网草案阶段:从提出开始不断进行讨论实验,有了一定成熟度,觉得实际可行,认为其可以进行标准化,可进入下一阶段

②.提议标准阶段:计入RFC,开始进入众多设备厂商生产环节,投入试验使用,一般为6个月,当所有参与协议的人觉得其“实用性强,不存在太多问题”,则进入下一阶段

③.草案标准阶段:一般为期4个月,在经过不断的使用和讨论改进后,被大众所使用接受,那么这个草案标准就进入下一个阶段

④.标准阶段:到这个阶段,意味着该标准已广泛被使用且具有很强的实用性

三次握手四次挥手

(1)第一步:源主机A的TCP向主机B发出连接请求报文段,其首部中的SYN(同步)标志位应置为1,表示想与目标主机B进行通信,并发送一个同步序列号X(例:SEQ=100)进行同步,表明在后面传送数据时的第一个数据字节的序号是X+1(即101)。SYN同步报文会指明客户端使用的端口以及TCP连接的初始序号。

(2)第二步:目标主机B的TCP收到连接请求报文段后,如同意,则发回确认。在确认报中应将ACK位和SYN位置1,表示客户端的请求被接受。确认号应为X+1(图中为101),同时也为自己选择一个序号Y。

(3)第三步:源主机A的TCP收到目标主机B的确认后要向目标主机B给出确认,其ACK置1,确认号为Y+1,而自己的序号为X+1。TCP的标准规定,SYN置1的报文段要消耗掉一个序号。

运行客户进程的源主机A的TCP通知上层应用进程,连接已经建立。当源主机A向目标主机B发送第一个数据报文段时,其序号仍为X+1,因为前一个确认报文段并不消耗序号。

当运行服务进程的目标主机B的TCP收到源主机A的确认后,也通知其上层应用进程,连接已经建立。至此建立了一个全双工的连接。

三次握手的原因
如果采用的是三次握手,就算是那一次失效的报文传送过来了,服务端接受到了那条失效报文并且回复了确认报文,但是客户端不会再次发出确认。由于服务器收不到确认,就知道客户端并没有请求连接。

学习嵌入式的同学可以关注一下微信公众号【嵌入式悦翔园】回复“资源”即可获得全部嵌入式资源,其中包括STM32资源、51单片机资源、Linux学习资源等等,想要学习嵌入式的快去关注把!
请添加图片描述

猜你喜欢

转载自blog.csdn.net/qq_45172832/article/details/124369083