计算机网络简单介绍

一、摘要

​ 上一篇我们讲了计算机的各个组成部分(硬件、软件),各个组成部分是用来干嘛的和如何运行的,以及各个部分是通过什么连接起来和连接到一起是怎么运行工作的。这些都是属于计算机内部的东西。接下来我们要知道计算机大部分工作都是需要与外部连接来运行的,那么与外部的连接就需要有网络,所以我们要知道计算机的网络有什么样的划分?该怎样配置我们电脑的网络使其能够正常工作?以及它与外部连接工作时又是怎样来运行的?需要走哪些流程?

二、计算机网络

1. 网络分类

1.1 地理范围分类:

局域网(LAN):内部网络,例如公司或学校内部区域覆盖的、私有的,不能上网

城域网(MAN):能覆盖一个城市的网络

广域网(WAN):互联网,覆盖到全球范围内的网络

1.2 网络介质分类:

有线网络有:网线(内部是铜丝的双绞线)、光纤(内部是玻璃材质的)。

无线网络有:WIFI、5G

2. 网络参考模型

2.1 OSI七层参考模型
2.1.1 OSI参考模型介绍

L1物理层——L2数据链路层——L3网络层——L4传输层——L5会话层——L6表示层——L7应用层。

​ 下面将以电脑设备发送微信消息和用电脑浏览器访问百度网页这两个例子举例说明。

2.1.2 例一、用电脑发送微信消息
2.1.2.1 OSI参考模型-数据封装过程

—在L7应用层上,使用微信输入“在吗”

—在L6表示层上,进行数据格式转换,将我们使用的自然语言转换成计算机看得懂的机器语言

—在L5会话层,建立端到端的连接,将我的微信聊天窗口与腾讯的服务器连接起来,确认是我在说话而不是别人

—到L4传输层,确定传输方式TCP(因为需要先和对端连接再传输,所以安全稳定但相对来说速度慢)/UDP(传输速度快但相对来说不是特别稳定和安全),我们发送聊天信息一般是UDP,到这里会在我们的上层数据外边儿封装上一层协议头部形成数据段。而我们使用的设备一般是防火墙、四层交换机

—到L3网络层,开始进行逻辑地址即IP地址(用十进制表示的一串数字代码)的传输和寻找,就是在IP地址表(路由表)里边儿找到我们要与之说话的那个人在哪,这时会在我们上一层形成的数据段外部再封装一层IP头部形成数据包。在这一层的设备一般有路由器、3层交换机

—接着到L2数据链路层,会进行物理地址即MAC地址(用16进制表示的一串编码)的传输和寻找,就是在找到我们与之对话的这个人在哪的基础上再通过MAC地址表来找到并确认这个人是谁,此时我们会在数据包的外部再封装上MAC头部形成数据帧。在这一层我们一般使用的设备是2层交换机

—最后到L1物理层,通常是指传输介质,可以传输波信号、电信号、数字信号、模拟信号等等。在这会将数据帧转换成比特流(用二进制表示的数字信号、波信号等等)。在这一层会用不同的传输介质来传输信号,比如网线、网卡、光纤等。

​ 到这里我们的消息就算是被打包发送出去了,而对方收到并显示我们发送的消息还需要在对方的设备上经过这七层模型进行解封装的过程把数据一层一层拆出来并转换和显示出来。对方接收到数据后的解封装过程我们稍后再详细说明,下面我们先来说明一下IP地址与MAC地址之间的区别。

2.1.2.2 IP地址与MAC地址的区别

(1)MAC地址也叫做物理地址,是每台设备自带的且只有一个,只要不故意篡改它是不可变的,相当于身份证;IP地址也叫做逻辑地址,是基于人为制定的一套规则系统来设置和分配的,它是可变的,相当于你的当前坐标,只不过是会随着空间和时段的变化而发生动态变化。

(2)MAC地址分为源MAC(我自己设备的)和目标MAC(对方设备的);IP地址也分为源IP(我自己的)和目标IP(对方的)

(3)一台电脑可以有多个IP地址,因为有局域网、城域网和广域网的划分;在局域网内IP地址可以在一定范围内自行设置(家庭的自行设置,公司的相当于分发一个工牌号);在城域网内可能会有一个IP地址,属于特殊的专用的(一般不能家用,企业使用需向运营商付费购买一个固定公网IP);广域网上的是运营商分配给你家或者公司整个网络的公网IP地址。当你的设备在工作和运行中需要与外部产生连接时就会把你的局域网IP地址替换成这个广域网IP地址,相当于在内可以通过工号找你,在外可以通过公司前台找你。你访问不同的网络就会通过路由表决定使用你不同的IP地址。

2.1.2.3 对方接收到数据后-解封装过程

这个过程是在对方的设备上进行的。

—L1物理层,比特流转化为数据帧

—被对方的L2数据链路层交换机拿到,打开MAC头部,查看一下目标MAC是否是找自己的,L2 交换机确认数据帧是找自己的,丢弃MAC头部

—给L3 网络层 ,打开IP头部,进一步确认是否是找自己的,确认是找自己的,L3 IP头部丢弃,查看一下协议层TCP / UDP里面的信息,查看完

—L4 传输层(查看端口),确认传输方式是TCP/UDP(聊天一般为UDP)

—L5会话层,给与对应的软件接受上层数据

—L6表示层,把二进制的数据转化为自然语言

—L7应用层,展示在微信的聊天窗口给用户阅读,对方设备聊天窗口就会显示消息”在吗“

2.1.3 例二、用电脑浏览器访问百度网页
2.1.3.1 访问步骤

​ 使用电脑浏览器访问百度,打开百度首页界面的流程应该是:用户打开电脑桌面的浏览器—输入百度的域名”www.baidu.com"—连接到百度的服务器—百度服务器接收并确认无误之后—会再反馈给用户,响应“访问百度首页界面”的请求,并在客户端打开百度首页界面。

​ 所以这个过程就需要大致进行两次数据封装与解封装的过程。即第一次是客户端到百度服务器、第二次是百度服务器反馈给客户端的过程。

2.1.3.2 OSI参考模型-数据封装过程

是在我的电脑上进行的

—在L7应用层上,打开用户桌面上的浏览器

—在L6表示层上,进行数据格式转换,也就是将我们输入的“www.baidu.com"这个域名转换成计算机看得懂的机器语言

—在L5会话层,建立端到端的连接,将我设备与腾讯的服务器连接起来,确认是我的访问请求而不是别人

—到L4传输层,确定传输方式TCP(因为需要先和对端连接再传输,所以安全稳定但相对来说速度慢)/UDP(传输速度快但相对来说不是特别稳定和安全),我们访问页面一般是TCP,在这里会在我们的上层数据外边儿封装上一层协议头部形成数据段。而我们使用的设备一般是防火墙、四层交换机

—到L3网络层,开始进行逻辑地址即IP地址(用十进制表示的一串数字代码)的传输和寻找,就是在IP地址表(路由表)里找到我们要与之说话的那个人在哪,即百度服务器的IP地址,这时会在我们上一层形成的数据段外部再封装一层IP头部(包括源IP与目标IP)形成数据包。在这一层的设备一般有路由器、3层交换机

—接着到L2数据链路层,会进行物理地址即MAC地址(用16进制表示的一串代码,有数字和英文字母,怎么计算的这里不过多赘述)的传输和寻找,就是在找到我们与之对话的这个人在哪的基础上再通过MAC地址表来找到并确认是谁,此时我们会在数据包的外部再封装上MAC头部(包括源MAC地址与目标MAC地址)形成数据帧。在这一层我们一般使用的设备是2层交换机

—最后到L1物理层,通常是指传输介质,可以传输波信号、电信号、数字信号、模拟信号等等。在这会将数据帧转换成比特流(用二进制表示的数字信号),在这一层会用不同的传输介质来传输信号,比如网线、网卡、光纤等。

2.1.3.3 百度服务器收到后-数据解封装过程

是在百度服务器上进行的

—L1物理层,百度服务器网卡收到信号后,比特流转化为数据帧

—被对方的L2数据链路层交换机拿到,打开MAC头部,查看一下目标MAC是否是找自己的,L2 交换机确认数据帧是找自己的,丢弃MAC头部

—L3 网络层 ,打开IP头部,检查目标IP,进一步确认是否是找自己的,确认是找自己的,L3 IP头部丢弃,查看一下协议层TCP / UDP里面的信息,查看完

—L4 传输层(查看端口),确认传输方式是TCP/UDP(访问页面一般为TCP),TCP重组成完整的加密数据段,确认无误,将数据交给表示层

—L5会话层,给与百度,找到对应的会话状态,接受上层数据

—L6表示层,把数据还原出我们的访问请求

—L7应用层,百度服务器读到访问请求-你的设备的浏览器要看首页,需要进入到百度首页界面

2.1.3.4服务器到客户端-封装过程

是在百度服务器上进行的

—在L7应用层上,百度服务器响应我的请求并进行反馈

—在L6表示层上,进行数据格式转换,将反馈后的消息转换成机器语言

—在L5会话层,建立端到端的连接,将百度服务器与我的设备连接起来,确认是我的访问请求而不是别人

—到L4传输层,确定传输方式TCP,会在我们的上层数据外边儿封装上一层协议头部形成数据段。使用的设备一般是防火墙、四层交换机

—到L3网络层,开始进行逻辑地址即IP地址的传输和寻找,在IP地址表(路由表)里找到我在哪,即我的IP地址,再封装一层IP头部(包括源IP与目标IP,且此时目标IP就是我在打开我的浏览器上使用的IP) ,形成数据包。设备一般有路由器、3层交换机

—L2数据链路层,进行物理地址即MAC地址的传输和寻找,通过MAC地址表来找到并确认是谁,在数据包的外部封装上MAC头部(包括源MAC地址与目标MAC地址,同上,目标MAC就变成了我的MAC地址)形成数据帧。一般使用设备是2层交换机

—最后到L1物理层,将数据帧转换成比特流发出

2.1.3.5 服务器到客户端-解封装过程

是在我的电脑上进行的

—L1物理层,我的设备网卡收到信号后,比特流转化为数据帧

—L2数据链路层交换机拿到后,打开MAC头部,查看一下目标MAC是否是找自己的,L2 交换机确认数据帧是找自己的,丢弃MAC头部

—L3 网络层 ,打开IP头部,检查目标IP,进一步确认是否是找自己的,确认是找自己的,L3 IP头部丢弃,查看一下协议层TCP / UDP里面的信息,查看完

—L4 传输层(查看端口),确认传输方式是TCP/UDP(访问页面一般为TCP),TCP重组成完整的加密数据段,确认无误,将数据交给表示层

—L5会话层,建立端到端的连接,即我的电脑端与百度服务器,找到对应的会话状态,访问请求没有会话状态,接受上层数据

—L6表示层,进行数据格式转换

—L7应用层,浏览器得以访问打开百度页面,进入到百度首页界面

2.2:TCP/IP参考模型

​ 我们上面所讲的OSI七层参考模型其实是理论模型,而在实际运行中人们又把这七层模型划分为四层模型,分别为网络接口层—网络层—传输层—应用层,所以TCP/IP模型是互联网的实际标准。我们可以根据OSI七层参考模型来认识TCP/IP四层参考模型。

—L1网络接口层;包括物理层、数据链路层

—L2网络层;包括网络层

—L3传输层;包括传输层

—L4应用层;包括会话层,表示层,应用层

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐