网络模糊概念和osi七层协议

一、交换机

为了组局域网,网络交换机(Switch)是一种网络设备,用于在局域网络(LAN)内传输数据包。它是计算机网络中的关键组件之一,通常用于连接多台计算机、服务器、网络设备和其他网络终端设备,以实现它们之间的高速、可靠的数据传输。

一.1、物理交换机(局域网):

使用硬件设备,通过网线(RJ45)进行连接起来,启动网络互通。

一.2、虚拟交换机(避免相互网络干扰、例如一台机器多台虚拟机):

虚拟交换机是一种虚拟化技术,用于管理和控制虚拟机(VM)之间的网络通信。它的主要目的是提供虚拟网络功能,以便在物理硬件上创建和管理多个虚拟网络环境。虚拟交换机的主要用途包括:

虚拟机通信:虚拟交换机允许虚拟机之间进行网络通信,就好像它们连接到物理网络一样。这样,虚拟机可以相互通信,共享数据和资源。

隔离虚拟网络:虚拟交换机可以帮助实现虚拟网络的隔离。不同的虚拟网络可以在同一物理硬件上运行,但彼此之间是隔离的,从而确保虚拟机之间的安全性和隔离性。

网络性能优化:虚拟交换机可以管理虚拟机之间的网络流量,优化网络性能,确保网络流量的高效传输。

网络安全性:通过虚拟交换机,可以实施网络安全策略,如访问控制列表(ACL)、防火墙规则和安全监控,以保护虚拟网络免受网络威胁。

灵活性和可伸缩性:虚拟交换机允许管理员根据需要轻松创建、配置和管理虚拟网络,而不需要物理网络设备的改动。这提供了灵活性和可伸缩性,以适应不断变化的业务需求。

网络管理:虚拟交换机通常具有管理界面,供管理员监视和配置虚拟网络。这使得网络管理更加直观和便捷。

虚拟交换机在虚拟化环境中起着重要作用,如虚拟化服务器、云计算环境等。它们使虚拟化平台能够有效地管理虚拟机之间的网络通信,同时提供了网络隔离和安全性,使得虚拟化环境更加灵活、高效和可管理。

二、网关

关是计算机网络中的一种重要设备,它用于连接不同网络或子网,并在这些网络之间传递数据。网关在网络通信中充当中继点,起到连接和路由数据流量的作用

三、交换机和网关的区别

交换机(Switch)和网关(Gateway)是两种不同的网络设备,各自具有特定的功能和用途。尽管它们在网络中都扮演着重要的角色,但它们不是相互替代的,因为它们解决了不同的问题和任务。

以下是交换机和网关之间的主要区别和为什么它们不能互相替代:

  1. 功能不同:

    交换机:交换机是用于在局域网(LAN)内交换和转发数据帧的设备。它的主要功能是在同一网络中的设备之间提供高速、可靠的数据交换。交换机工作在数据链路层(第二层),它根据数据帧中的目标MAC地址将数据包从一个端口转发到另一个端口。

    网关:网关是用于连接不同网络或子网之间的设备,它可以执行路由、协议转换、数据包过滤和安全性控制等功能。网关通常工作在网络层(第三层)以上,它能够将数据包从一个网络传输到另一个网络,并负责网络地址转换、协议转换等任务。

  2. 不同的层次:

    交换机主要工作在数据链路层,负责局域网内设备之间的数据交换。

    网关主要工作在网络层以上,负责连接不同网络、执行路由和协议转换等任务。

  3. 不同的用途:

    交换机主要用于构建局域网内部的高性能数据传输,并用于连接同一网络中的设备。

    网关主要用于连接不同网络,例如将局域网连接到广域网(WAN)或连接不同协议的网络。

  4. 性能和特性:

    交换机通常专注于高性能的数据交换,它们通常不执行路由或跨越不同网络的功能。

    网关具有更广泛的功能,通常包括路由、协议转换、安全性控制等,但性能可能不如专门的交换机。

综上所述,交换机和网关是用于不同的网络任务和用途的设备,它们在网络层次、功能和性能方面有所不同。因此,它们通常不能互相替代,而是一起在网络中协同工作,以满足不同的网络需求和场景。交换机用于局域网内部的数据交换,而网关用于连接不同网络之间的数据传输和协议转换。

四、代理

代理(Proxy)是一种在网络通信中充当中间人的服务器或应用程序,用于代表客户端或服务器执行请求和响应

五、osi七层协议

OSI(开放系统互连)模型是一个用于理解和设计计算机网络的概念性框架,它将网络协议和功能分为七个不同的层次。每个层次负责特定的任务,协同工作以实现端到端的通信。以下是OSI模型的七个层次,从底层到顶层:

  1. 物理层(Physical Layer):

    物理层是网络的最底层,负责定义物理介质(例如电缆、光纤)以及数据的传输方式(如电压、频率等)。

    主要任务包括传输比特流、数据的编码和解码、物理介质的传输特性等。

  2. 数据链路层(Data Link Layer):

    数据链路层负责在物理层上建立直接的点对点连接,以便可靠地传输数据帧。

    主要任务包括数据帧的封装、物理地址(MAC地址)的管理、流量控制、错误检测和纠正等。

  3. 网络层(Network Layer):

    网络层负责实现端到端的数据传输,并为数据包选择最佳路径,以及跨越不同网络的路由。

    主要任务包括逻辑寻址、路由、数据包转发和分组等。

  4. 传输层(Transport Layer):

    传输层负责端到端的数据传输和流量控制。它为应用程序提供可靠的数据传输服务。

    主要任务包括端到端的错误检测和恢复、流量控制、数据分段和数据包重新排序等。

  5. 会话层(Session Layer):

    会话层负责建立、管理和终止通信会话,以确保数据的顺序传输和可靠性。

    主要任务包括会话的管理、同步、检测和恢复等。

  6. 表示层(Presentation Layer):

    表示层负责数据的编码、解码和加密解密,以确保数据在不同系统之间的互操作性。

    主要任务包括数据的格式转换、数据加密和数据压缩等。

  7. 应用层(Application Layer):

    应用层是最高层,提供用户应用程序与网络之间的接口。它包括各种网络应用和服务,如Web浏览器、电子邮件客户端、文件传输协议(FTP)等。

主要任务包括提供应用程序与网络的接口、应用程序的数据处理和通信。

每个OSI模型的层次都有特定的功能和任务,它们在协同工作中实现了网络通信的各个方面。该模型提供了一种通用的方式来理解和设计网络协议,使不同供应商的网络设备和协议能够互操作,并有助于诊断网络问题。


上述通俗点说:

当我们谈论计算机网络时,可以将OSI模型想象成一个七层的"通信蛋糕",每一层都有不同的任务,就像蛋糕的每一层都有不同的口味和功能。以下是对每一层的通俗解释:

  1. 物理层(Physical Layer):这一层就像蛋糕的最底层,关注的是如何在电线或光纤上发送和接收零和一的信号,就像决定用什么材料做蛋糕的底座一样。

  2. 数据链路层(Data Link Layer):这一层就像蛋糕的第二层,它负责将数据分成小块,然后把这些块包装成数据包,就像将蛋糕切块并包装好一样。

  3. 网络层(Network Layer):这一层就像蛋糕的第三层,它负责决定数据包应该如何从一个地方传输到另一个地方,就像选择蛋糕的送货路径一样。

  4. 传输层(Transport Layer):这一层就像蛋糕的第四层,它确保数据包按照正确的顺序到达目的地,就像确保蛋糕切块的顺序是正确的一样。

  5. 会话层(Session Layer):这一层就像蛋糕的第五层,它建立和管理不同应用程序之间的通信会话,就像安排不同人之间的聚会一样。

  6. 表示层(Presentation Layer):这一层就像蛋糕的第六层,它负责数据的格式转换,就像将蛋糕的外观装饰得漂亮一样。

  7. 应用层(Application Layer):这一层就像蛋糕的最顶层,它包括各种应用程序,比如网页浏览器、邮件客户端等,就像蛋糕的顶部装饰和口味一样。

所以,OSI模型就是一种将网络通信的不同方面分成七层,每一层都有自己的任务,最终让我们能够在网络上愉快地通信,就像吃一块精心制作的蛋糕一样。每一层都有自己的功能,但它们一起工作,使得网络通信变得更加可靠和有序。

六、TCP三次握手 和 TCP四次挥手

TCP(传输控制协议)是一种常用的网络协议,用于在计算机之间建立可靠的连接。TCP连接的建立和终止分别涉及到三次握手(Three-Way Handshake)和四次挥手(Four-Way Handshake)的过程。

六.1、TCP三次握手:

  1. 第一步:客户端发送连接请求:客户端向服务器发送一个带有SYN(同步序列号)标志的数据包,请求建立连接。此时客户端进入"SYN_SENT"状态。

  2. 第二步:服务器确认连接请求:服务器接收到客户端的请求后,回复一个带有SYN和ACK(确认)标志的数据包,表示同意建立连接。同时,服务器会选择一个初始的序列号。此时服务器进入"SYN_RECEIVED"状态。

  3. 第三步:客户端确认连接:客户端收到服务器的确认后,也回复一个带有ACK标志的数据包,表示连接已建立。此时客户端和服务器都进入"ESTABLISHED"状态,连接建立成功,可以开始数据传输。


当你想与朋友建立通话时,可以把TCP的三次握手比喻成以下对话:

  1. 你:嘿,你在吗?

    这是第一次握手。你向朋友发送消息,问他是否准备好和你通话。

  2. 朋友:嗯,我在,你想聊什么?

    这是第二次握手。你的朋友回应你,表示他准备好了与你通话。

    你:好的,我们可以开始聊天了。

  3. 这是第三次握手。你再次回应,确认你们可以开始通话。

所以,三次握手就像你和朋友建立通话前的问候和确认过程,确保你们两个都准备好了开始通话。这种确认过程是为了确保通信的可靠性和稳定性。

六.2、TCP四次挥手:

  1. 第一步:客户端发起关闭连接:当客户端希望关闭连接时,它向服务器发送一个带有FIN(结束)标志的数据包,表示不再发送数据。此时客户端进入"FIN_WAIT_1"状态。

  2. 第二步:服务器确认关闭请求:服务器接收到客户端的FIN后,发送一个带有ACK标志的数据包来确认关闭请求,但服务器仍然可以向客户端发送数据。此时服务器进入"CLOSE_WAIT"状态,客户端仍然处于"FIN_WAIT_2"状态。

  3. 第三步:服务器关闭连接:当服务器也希望关闭连接时,它向客户端发送一个带有FIN标志的数据包,表示不再发送数据。此时服务器进入"LAST_ACK"状态。

  4. 第四步:客户端确认关闭请求:客户端接收到服务器的FIN后,回复一个带有ACK标志的数据包,表示确认关闭请求。此时客户端进入"TIME_WAIT"状态,等待一段时间以确保服务器收到确认,并且确保任何未达到的数据包被丢弃。

完成上述四个步骤后,连接正式关闭,客户端和服务器都进入"CLOSED"状态,不再进行数据传输。这个等待的时间是为了确保在连接关闭期间的任何残留数据包都能够被清除,以维护网络的可靠性。


四次挥手是用于结束TCP连接的过程,你可以把它想象成结束一次电话通话的方式,下面是一个通俗的解释:

  1. 第一次挥手:就像通话结束时,你告诉朋友:"我不想再说话了,我们可以挂电话了吗?" 这是发送一个带有FIN(结束)标志的消息,表示你不想再发送数据了。

  2. 第二次挥手:然后,你的朋友回应说:"好的,我明白了,我也不想说话了。" 他发送一个带有FIN标志的消息来确认,表示他也不再发送数据了。这是第一次挥手的确认。

  3. 第三次挥手:但是,有时候可能你还需要一点时间来处理未完成的事情,就像结束通话后再说几句话一样。所以,你可能需要额外的时间,然后再次告诉朋友:"好的,我真的不想说话了,我们可以挂电话了吗?" 这是第二次挥手,你再次发送一个带有FIN标志的消息。

  4. 第四次挥手:最后,你的朋友再次回应,说:"好的,我明白了,我们可以挂电话了。" 他发送一个带有FIN标志的消息来确认,表示他也不再发送数据了。这是第二次挥手的确认。

现在,连接可以安全地关闭了。所以,四次挥手就像结束一次电话通话的过程,双方都确认不再发送数据,并最终挂断电话。这个过程确保了连接的正常结束。

七、ip和网关和子网掩码

1. 网关

上述已经讲过了

2. 子网掩码

子网掩码(Subnet Mask)是用于将一个 IP 地址划分成网络地址和主机地址两部分的一个32位二进制数,通常以点分十进制(CIDR)表示法呈现。它与IP地址一起使用,用于确定一个主机是否位于同一局域网或子网内。

子网掩码的作用是将IP地址分成两部分:网络地址和主机地址。网络地址标识了特定网络或子网,而主机地址标识了在该网络或子网内的具体主机。子网掩码中的"1"表示网络位,而"0"表示主机位。通过与IP地址进行按位与运算,可以确定该地址属于哪个子网。

例如,如果使用标准的子网掩码255.255.255.0(在CIDR表示法中为/24),那么前24位用于网络地址,剩余的8位用于主机地址。这意味着在同一个子网内的所有主机都必须具有相同的前24位,只有最后的8位可以不同,用于标识不同的主机。

以下是一些常见的子网掩码示例:

255.255.255.0(/24):用于划分一个IPv4地址的前24位为网络地址,后8位为主机地址。

255.255.0.0(/16):用于划分一个IPv4地址的前16位为网络地址,后16位为主机地址。

255.0.0.0(/8):用于划分一个IPv4地址的前8位为网络地址,后24位为主机地址。

子网掩码的正确配置对于构建和管理网络非常重要,它可以帮助组织和控制IP地址的分配以及网络流量的路由。在子网化网络中,不同子网之间的通信通常需要经过路由器进行,而在同一子网内的主机可以直接通信,因为它们共享相同的网络地址前缀。

比如255.255.255.0,那么你的局域网ip:192.168.120.xxx,xxx为你们局域网内需要修改的地方前面都不变

3. ip

IP(Internet Protocol)是互联网上用于标识和定位设备(计算机、服务器、路由器等)的一种协议。它是TCP/IP协议套件的核心之一,用于在网络中路由数据包,并确保数据能够从源设备传递到目标设备。IP地址是唯一标识网络上每个设备的数字地址。

IPv4(Internet Protocol version 4)和IPv6(Internet Protocol version 6)是两种常见的IP协议版本:

  1. IPv4:

IPv4是最早的IP协议版本,它使用32位二进制地址,通常以点分十进制表示法表示(例如,192.168.1.1)。

IPv4的主要问题是它的地址空间有限,只能支持大约42亿个唯一的IP地址。随着互联网的迅速扩展,IPv4地址枯竭成为了一个问题。

  1. IPv6:

IPv6是IPv4的继任者,它使用128位二进制地址,通常以冒号分隔的十六进制表示法表示(例如,2001:0db8:85a3:0000:0000:8a2e:0370:7334)。

IPv6大大扩展了IP地址空间,提供了约340亿亿亿亿(3.4 x 10^38)个唯一的IP地址,解决了IPv4地址枯竭的问题。

IPv6还带来了一些其他改进,如更好的安全性、更好的支持移动设备和更好的支持多播通信。

IP地址是分层网络体系结构的关键部分,它允许数据在网络中传输,并确保它到达正确的目的地。IP地址通常与子网掩码一起使用,以将网络划分为子网,以便更有效地管理和路由网络流量。

相关推荐
陌小呆^O^9 分钟前
Cmakelist.txt之win-c-udp-client
c语言·开发语言·udp
I_Am_Me_24 分钟前
【JavaEE进阶】 JavaScript
开发语言·javascript·ecmascript
重生之我是数学王子35 分钟前
QT基础 编码问题 定时器 事件 绘图事件 keyPressEvent QT5.12.3环境 C++实现
开发语言·c++·qt
Ai 编码助手36 分钟前
使用php和Xunsearch提升音乐网站的歌曲搜索效果
开发语言·php
Koi慢热39 分钟前
路由基础(全)
linux·网络·网络协议·安全
学习前端的小z40 分钟前
【前端】深入理解 JavaScript 逻辑运算符的优先级与短路求值机制
开发语言·前端·javascript
神仙别闹1 小时前
基于C#和Sql Server 2008实现的(WinForm)订单生成系统
开发语言·c#
XINGTECODE1 小时前
海盗王集成网关和商城服务端功能golang版
开发语言·后端·golang
zwjapple1 小时前
typescript里面正则的使用
开发语言·javascript·正则表达式
小五Five1 小时前
TypeScript项目中Axios的封装
开发语言·前端·javascript