目录
前言
由于网络是一个全新的领域,所以本篇文章旨在相关基本概念的认识。
网络互连
网络互连是指将多个独立的网络连接起来,形成一个更大的网络系统。这样,不同网络上的设备可以相互通信和交换信息。
局域网LAN
局域网(Local Area Network, LAN)是指在一个相对较小的地理范围内,如家庭、办公室或学校,由多台计算机和其他设备通过网络设备连接起来的网络。
主要的方式有以下几种:
(1)基于⽹线直连
(2)基于集线器组建
(3)基于交换机组建
(4)基于交换机和路由器组建
广域网WAN
广域网(Wide Area Network, WAN)是指覆盖范围更广的网络,它将不同地理位置的局域网连接起来。
所谓"局域⽹"和"⼴域⽹"只是⼀个相对的概念。广域网在某种角度也可以看做一个很大的局域网哟~
IP地址
这个或多或少我们在生活中见过,IP地址就是描述了一台主机在互联网所处的位置,⽤于标识主机⽹络地址。
不会查看本机的IP地址?--->打开“设置”应用(按 Win + I 键)。
点击“网络和Internet”。
点击“查看硬件和连接属性”。
在弹出的窗口中,你可以看到“IPv4 地址”。
格式
IP地址是⼀个32位的⼆进制数,通常被分割为4个“8位⼆进制数”(也就是4个字节),如: 01100100.00000100.00000101.00000110。
不过为了方便阅读,通常⽤“点分⼗进制”的⽅式来表⽰,即a.b.c.d的形式(a,b,c,d都是0~255之间的⼗进制整数)。
端口号
端口号主要是区分当前主机上的指定的运用程序(进程)。简单来说就是发送快递时,不光需要指定收货地址(IP地址),还需要指定收货⼈(端⼝号)。
格式
端⼝号是0~65535范围的数字,在⽹络通信中,进程可以通过绑定⼀个端⼝号,来发送及接收⽹络数据。
协议
协定就是约定通信双方,交互数据的“规则”。
就比如中国有很多省份,不同的省份有不同的方言,但不同的省的人交流大家就都是用普通话(协议)进行。
为何要有协议?主要是这三点:
• 计算机⽣产⼚商有很多;
• 计算机操作系统,也有很多;
• 计算机⽹络硬件设备,还是有很多;
这里就先总结一下前面的,避免搞混了~
还是拿快递举例:
看这张图就很好理解了~
协议分层
协议分层是将网络通信协议分为多个层次,每个层次负责不同的功能,并约定好层与层之间的交互关系。
这是由于网络通信是非常复杂的过程。只靠一个协议去约定所有的网络通信细节是不大可能的。
因此协议分层就出现了。
分层的作⽤
1.降低了使用成本,使用某个协议的时候,不需要考虑其他协议的实现细节。
2.降低了整个体系的耦合性,可以灵活的变更某个层次的协议
OSI七层网络模型
1.首先名字不要记错,OSI七层网络模型。
2.这是只存在教科书上的一种模型,现实中并未被采纳。
OSI七层模型划分为以下七层:
7.应用层
功能:针对特定应用的协议。(传输数据用来干啥)
6.表示层
功能:设备固有数据格式和网络标准格式的转换。
5.会话层
功能:通信管理,负责建立和断开通信连接。并且管理传输层以下的分层。
4.传输层
功能:管理两个节点之间的数据传输,确保数据被可靠地传输到目标地址。
3.网络层
功能:地址管理和路由选择。决定哪条路进行数据传输。
2.数据链路层
功能:对于两个相邻节点数据传输的具体实施
1.物理层
功能:传输数据的硬件基础设施。
TCP/IP五层网络模型
但这才是重点!舍去部分。这也是当今世界最主流的网络协议模型。
5.应用层
功能:针对特定应用的协议。(传输数据用来干啥)
4.传输层
功能:管理两个节点之间的数据传输,确保数据被可靠地传输到目标地址。
3.网络层
功能:地址管理和路由选择。决定哪条路进行数据传输。
2.数据链路层
功能:对于两个相邻节点数据传输的具体实施
1.物理层
功能:传输数据的硬件基础设施。
对于一些常见网络设备所在分层(也要记住):
(1)对于⼀台主机,它的操作系统内核实现了从传输层到物理层的内容,也即是TCP/IP五层模型的下四层。
(2)对于⼀台路由器,它实现了从⽹络层到物理层,也即是TCP/IP五层模型的下三层。
(3)对于⼀台交换机,它实现了从数据链路层到物理层,也即是TCP/IP五层模型的下两层。
(4) 对于集线器,它只实现了物理层。
封装
封装是指在数据发送时,将数据从上层协议传递到下层协议的过程。每一层都会在数据上添加自己的头部信息(有时还包括尾部信息),这些信息包含了该层协议需要使用的控制信息。
比如:
1.应用层的数据(称为消息)传递到传输层,传输层会在数据前加上TCP或UDP头部,形成段。
2.传输层的段传递到网络层,网络层会在段前加上IP头部,形成数据包。
3.网络层的数据包传递到数据链路层,数据链路层会在数据包前加上帧头部,并可能加上帧尾部,形成帧。
4.最后,数据链路层的帧在物理层被转换成比特流,通过物理媒介传输。
举个生活中的例子:
当你准备邮寄包裹时,你会把礼物(数据)放进一个盒子里(应用层)。
然后,你可能会在盒子上写上收件人的名字和地址(传输层)。
接下来,你把这个盒子放进一个更大的箱子里,并在箱子上贴上邮寄标签和地址(网络层)。
你把这个箱子交给快递小哥,他可能会在箱子外面再套上一个邮袋,并在邮袋上写上邮局的信息(数据链路层)。
最后由快递小哥(物理层)进行运输。
那这个过程就像网络中的封装,每一层都给数据加上自己的“标签”,确保它能被正确地传递。
分用
指在数据接收时,将数据从下层协议传递到上层协议的过程。在这个过程中,每一层都会剥离掉该层添加的头部信息(和尾部信息),并将剩余的数据传递给上层协议。(分用就是封装的逆过程。)
同样是寄快递:
快递小哥把邮袋交给收件人,收件人打开邮袋,取出里面的箱子(数据链路层)。
然后,收件人打开箱子,看到里面的盒子,并检查邮寄标签(网络层)。
接着,收件人打开盒子,看到写有名字的礼物(传输层)。
最后,收件人取出礼物,享受它(应用层)。
这个过程就像网络中的分用,每一层都剥离掉自己的“标签”,并将数据传递给上一层,直到最终的数据被应用层使用。
客户端
客户端(Client)是指发起网络请求的计算机或设备。
客户端的主要功能是向服务器发送请求,并接收和处理服务器的响应。
服务器
服务器(Server)是指提供网络服务的计算机或设备。
服务器通常持续运行用于接收客户端的请求,处理请求,并将处理结果发送回客户端。
请求
请求(Request)是客户端向服务器发送的信息,要求服务器执行某个操作或提供某种服务。
请求通常包含以下信息:
请求方法(如GET、POST、PUT、DELETE)
请求的资源(如URL)
请求头(包含客户端信息、认证信息等)
请求体(对于POST和PUT请求,包含要发送的数据)
响应
响应(Response)是服务器对客户端请求的回复。
响应通常包含以下信息:
状态码(如200表示成功,404表示未找到资源)
响应头(包含服务器信息、内容类型等)
响应体(包含请求的结果数据,如网页内容、文件数据等)
两台主机之间的网络通信流程
在网络通信中,客户端和服务器是两个核心概念,它们通过请求和响应的交互方式进行通信。
整个流程:
1.建立连接:客户端通过解析获取服务器的IP地址,然后使用TCP或UDP协议与服务器建立连接。
2. 发送请求:客户端发送一个包含请求信息的报文给服务器。
3. 处理请求:服务器接收到请求后,根据请求内容进行处理。
4. 发送响应:服务器将处理结果封装成响应报文,发送回客户端。
5. 接收响应:客户端接收到响应报文后,进行处理,提取出响应内容(分用)。
6. 关闭连接:通信完成后,客户端和服务器根据协议规定关闭连接。
通过这种请求和响应的交互方式,客户端和服务器便实现了数据的交换和服务的提供。是不是和之前的快递流程很相似?
看到最后,如果觉得文章写得还不错,希望可以给我点个小小的赞,您的支持是我更新的最大动力