计算机网络

文章目录

  • OSI七层协议模型
  • TCP/IP四层模型和五层协议体系结构
  • **三次握手:**
  • TCP的四次挥手:
    • **为什么“握手”是三次,“挥手”却要四次?**
    • **为什么客户端在TIME-WAIT阶段要等2MSL?**
    • **为什么tcp为什么要建立连接?**
    • **请你解释一下TCP为什么可靠一些**
  • **请简单解释一下,arp协议和arp攻击。**
  • 什么是icmp协议,它的作用是什么?
  • 请你讲一下路由器和交换机的区别?

OSI七层协议模型

计算机网络_第1张图片

TCP/IP四层模型和五层协议体系结构

从下到上顺序:网络接口层、网际层(用网际层这个名字是强调这一层是为了解决不同的网络的互联问题)、运输层、应用层。不过从实质来讲,TCP/IP只有最上面的三层,因为最下面的网络接口层基本上和一般的通信链路的功能上没有多大差别。{五层体系的协议结构是综合了OSI和TCP/IP的优点的一种协议,包括(从下到上):物理层、数据链路层、网络层、运输层、应用层。(最底下两层可以称为网络接口层)}
计算机网络_第2张图片
主机到网络层:
网络接入层与OSI参考模型中的物理层和数据链路层相对应,她负责监视数据在主机和网络之间的交换。事实上,TCP/IP本身并未定义该层的协议,而由参与连接的个网络使用自己的物理层,和数据链路层协议,然后与TCP/IP网络接入层进行连接。地址解析协议(ARP)工作在此层,即OSI参考模型的数据链路层。实际上TCP/IP参考模型没有真正描述这一层的实现,只是要求能够提供给其上层-网络互连层一个访问接口,以便在其上传递IP分组。由于这一层未被定义,所以其具体的实现方法将随着网络类型的不同而不同。
网络互连层
网络互连层是整个TCP/IP协议栈的核心,它的
功能是分组发往目标网络或主机
。同时为了尽快发送分组,可能需要沿不同的路径同时进行分组传递。因此分组到达的顺序可能不同,这就需要上层必须对分组进行排序。该层定义了分组格式和IP协议。除了完成路由的功能外,也可以完成不同类型的网络互联。还需要完成拥塞控制。
传输层:
在TCP/IP模型中传输层的功能是使源端主机和目标端主机的对等实体可以进行会话。在传输层定义了两种服务质量不同的协议。TCP(transmission control protocol) UDP(user datagram protocol)
TCP协议是一个面向连接的,可靠的协议。它将一台主机上发出字节流没有差错的发往互联网上的其他主机。在发送端,他负责把上层传下来的的字节流分成报文段并传递给下层。在接收端,它负责把收到的报文进行重组后递交给上层。TCP协议还要处理端到端的流量控制,以避免缓慢接收的接收方没有的缓冲区。
UDP协议是一个不可靠的,无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。
应用层:
TCP/Ip模型将OSI参考模型中的会话层和表示层的功能合并到应用层实现。
应用层面向不同的网络应用引入了不同的应用协议。其中有基于TCP协议的,如文件传输协议(FTP)虚拟终端协议(Telnet)超文本连接协议(HTTP)也有基于UDP协议的。
TCP/IP报文格式:

Ethement帧头 IP头部 TCP头部 上层数据 FCS

TCP/IP报文封装
计算机网络_第3张图片
IP头部格式

分析:
1.版本字段:占4比特。用来表明IP协议实现的版本号,一般为IPV4,即0100
2.报头长度(Internet Header Length,IHL)字段:占4比特。头部占32比特的数字,包括可选项。普通IP数据报,该字段的值是5,即160比特=20字节。此字段最大值为60字节。
3.服务类型(Type of Service,TOS)字段:占8比特。其中前3比特为优先权字段(Precedence,现已被忽略)。第8比特保留未用。第 4至第7比特分别代表延迟,吞吐量,可靠性和花费。
4.总长度字段:占16比特。指明整个数据报的长度(以字节为单位)最大长度为65535字节。
5.标志字段:占16比特。用来唯一地标识主机发送的每一份数据报。通常每发一份报文,它的值会加1。
6.标志位字段:占3比特。标志一份数据包是否要求分段。
7.段偏移字段:**占13比特。**如果一份数据报要求分段的话,此字段指明该段偏移距原始数据报开始的位置。
8.生存期(TTL:time to live):占8比特。用来设置数据报最多可以经过的路由器数。由发送数据的源主机设置,通常为32,64,128等。每经过一个路由器,其值减1,直到0时该数据报被丢弃。
9.协议字段:占8比特。指明IP层所封装的上层协议类型,如ICMP,IGMP,TCP,UDP等
10.头部校验和字段:占16比特。内容是根据IP头部计算得到的校验和码。计算方法是:对头部中每个16比特进行二进制反码求和。(和ICMP、IGMP、TCP、UDP不同,IP不对头部后的数据进行校验)。  
11.源IP地址,目标IP地址字段各占32比特。用来标明发送IP数据报文的源主机地址和接收IP报文的目标主机地址。
12.可选项字段:占32比特。用来定义一些任选项:如记录路径,时间戳等。这些选项很少被使用,同时并不是所有主机和路由器都支持这些选项。可选项字段长度必须是32比特的整数倍,如果不足,必须填充0以达到此长度要求。

TCP数据段格式:
TCP是一种可靠的,面向连接的字节流服务。源主机在传送数据前需要先和目标主机建立连接。然后,在此连接上,被编号的数据段按序收发。同时,要求对每个数据段进行确认,源主机将再次发送该数据段。
如果在指定时间内没有收到目标主机对所发数据段的确认,源主机将再次发送该数据段。
计算机网络_第4张图片
1.源、目标端口号字段:占16比特。TCP协议通过使用"端口"来标识源端和目标端的应用进程。端口号可以使用0到65535之间的任何数字。在收到服务请求时,操作系统动态地为客户端的应用程序分配端口号。 
在服务器端,每种服务在"众所周知的端口"(Well-Know Port)为用户提供服务。
2.顺序号字段:占32比特。用来标识从TCP源端向TCP目标端发送的数据字节流,它表示在这个报文段中的第一个数据字节。
3.确认号字段:占32比特。只有ACK标志为1时,确认号字段才有效。它包含目标端所期望收到源端的下一个数据字节。  
4.头部长度字段:占4比特。给出头部占32比特的数目。没有任何选项字段的TCP头部长度为20字节;最多可以有60字节的TCP头部。
5.标志位字段(U、A、P、R、S、F):占6比特。各比特的含义如下:  
      URG:紧急指针(urgent pointer)有效。  
      ACK:确认序号有效。  
      PSH:接收方应该尽快将这个报文段交给应用层。  
      RST:重建连接。  
      SYN:发起一个连接。  
      FIN:释放一个连接。 
6.窗口大小字段:占16比特。此字段用来进行流量控制。单位为字节数,这个值是本机期望一次接收的字节数。
7.TCP校验和字段:占16比特。对整个TCP报文段,即TCP头部和TCP数据进行校验和计算,并由目标端进行验证。 
8.紧急指针字段:占16比特。它是一个偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号。 
9.选项字段:占32比特。可能包括"窗口扩大因子"、"时间戳"等选项。 
UDP数据段格式:
UDP是一种不可靠的、无连接的数据报服务。源主机在传送数据前不需要和目标主机建立连接。数据被冠以源、目标端口号等UDP报头字段后直接发往目的主机。这时,每个数据段的可靠性依靠上层协议来保证。在传送数据较少、较小的情况下,UDP比TCP更加高效。  
   计算机网络_第5张图片 
        UDP头部结构
1)源、目标端口号字段:占16比特。作用与TCP数据段中的端口号字段相同,用来标识源端和目标端的应用进程。  
2)长度字段:占16比特。标明UDP头部和UDP数据的总长度字节。  
3)校验和字段:占16比特。用来对UDP头部和UDP数据进行校验。和TCP不同的是,对UDP来说,此字段是可选项,而TCP数据段中的校验和字段是必须有的。   
套接字:
在每个TCP、UDP数据段中都包含源端口和目标端口字段。有时,我们把一个IP地址和一个端口号合称为一个套接字(Socket),而一个套接字对(Socket pair)可以唯一地确定互连网络中每个TCP连接的双方(客户IP地址、客户端口号、服务器IP地址、服务器端口号)。
 计算机网络_第6张图片  
注意:不同的应用层协议可能基于不同的传输层协议,如FTP、TELNET、SMTP协议基于可靠的TCP协议。TFTP、SNMP、RIP基于不可靠的UDP协议。  
  同时,有些应用层协议占用了两个不同的端口号,如FTP的20、21端口,SNMP的161、162端口。这些应用层协议在不同的端口提供不同的功能。如FTP的21端口用来侦听用户的连接请求,而20端口用来传送用户的文件数据。

再如,SNMP的161端口用于SNMP管理进程获取SNMP代理的数据,而162端口用于SNMP代理主动向SNMP管理进程发送数据。  
  还有一些协议使用了传输层的不同协议提供的服务。如DNS协议同时使用了TCP 53端口和UDP 53端口。DNS协议在UDP的53端口提供域名解析服务,在TCP的53端口提供DNS区域文件传输服务。   
来源:https://blog.csdn.net/qq3401247010/article/details/78148298

三次握手:

客户端与服务器之间数据的发送和返回的过程当中需要创建一个叫TCP connection的东西;
由于TCP不存在连接的概念,只存在请求和响应,请求和响应都是数据包,它们之间都是经过由TCP创建的一个从客户端发起,服务器接收的类似连接的通道,这个连接可以一直保持,http请求是在这个连接的基础上发送的;
在一个TCP连接上是可以发送多个http请求的,不同的版本这个模式不一样。
在HTTP/1.0中这个TCP连接是在http请求创建的时候同步创建的,http请求发送到服务器端,服务器端响应了之后,这个TCP连接就关闭了;
HTTP/1.1中可以以某种方式声明这个连接一直保持,一个请求传输完之后,另一个请求可以接着传输。这样的好处是:在创建一个TCP连接的过程中需要“三次握手”的消耗,“三次握手”代表有三次网络传输。
如果TCP连接保持,第二个请求发送就没有这“三次握手”的消耗。HTTP/2中同一个TCP连接里还可以并发地传输http请求。

三次握手详解:
所谓的三次握手即TCP连接的建立。这个连接必须是一方主动打开,另一方被动打开的。以下为客户端主动发起连接的图解:
URG:紧急指针(urgent pointer)有效。
ACK:确认序号有效。
PSH:接收方应该尽快将这个报文交给应用层。
RST:重置连接。
SYN:发起一个新连接。
FIN:释放一个连接。
计算机网络_第7张图片
握手之前主动打开连接的客户端结束CLOSED阶段,被动打开的服务器端也结束CLOSED阶段,并进入LISTEN阶段。随后开始“三次握手”:
握手之前主动打开连接的客户端结束CLOSED阶段,被动打开的服务器端也结束CLOSED阶段,并进入LISTEN阶段。随后开始“三次握手”:

(1)首先客户端向服务器端发送一段TCP报文,其中:

标记位为SYN,表示“请求建立新连接”;
序号为Seq=X(X一般为1);
随后客户端进入SYN-SENT阶段。
(2)服务器端接收到来自客户端的TCP报文之后,结束LISTEN阶段。并返回一段TCP报文,其中:

标志位为SYN和ACK,表示“确认客户端的报文Seq序号有效,服务器能正常接收客户端发送的数据,并同意创建新连接”(即告诉客户端,服务器收到了你的数据);
序号为Seq=y;
确认号为Ack=x+1,表示收到客户端的序号Seq并将其值加1作为自己确认号Ack的值;随后服务器端进入SYN-RCVD阶段。
(3)客户端接收到来自服务器端的确认收到数据的TCP报文之后,明确了从客户端到服务器的数据传输是正常的,结束SYN-SENT阶段。并返回最后一段TCP报文。其中:

标志位为ACK,表示“确认收到服务器端同意连接的信号”(即告诉服务器,我知道你收到我发的数据了);
序号为Seq=x+1,表示收到服务器端的确认号Ack,并将其值作为自己的序号值;
确认号为Ack=y+1,表示收到服务器端序号Seq,并将其值加1作为自己的确认号Ack的值;
随后客户端进入ESTABLISHED阶段。
服务器收到来自客户端的“确认收到服务器数据”的TCP报文之后,明确了从服务器到客户端的数据传输是正常的。结束SYN-SENT阶段,进入ESTABLISHED阶段。

在客户端与服务器端传输的TCP报文中,双方的确认号Ack和序号Seq的值,都是在彼此Ack和Seq值的基础上进行计算的,这样做保证了TCP报文传输的连贯性。一旦出现某一方发出的TCP报文丢失,便无法继续"握手",以此确保了"三次握手"的顺利完成。

此后客户端和服务器端进行正常的数据传输。这就是“三次握手”的过程。

为什么要进行第三次握手?
为了防止服务器端开启一些无用的连接增加服务器开销以及防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误。
由于网络传输是有延时的(要通过网络光纤和各种中间代理服务器),在传输的过程中,比如客户端发起了SYN=1创建连接的请求(第一次握手)。

如果服务器端就直接创建了这个连接并返回包含SYN、ACK和Seq等内容的数据包给客户端,这个数据包因为网络传输的原因丢失了,丢失之后客户端就一直没有接收到服务器返回的数据包。

客户端可能设置了一个超时时间,时间到了就关闭了连接创建的请求。再重新发出创建连接的请求,而服务器端是不知道的,如果没有第三次握手告诉服务器端客户端收的到服务器端传输的数据的话,

服务器端是不知道客户端有没有接收到服务器端返回的信息的。
计算机网络_第8张图片
由于网络传输是有延时的,这样没有给服务器端一个创建还是关闭连接端口的请求,服务器端的端口就一直开着,等到客户端因超时重新发出请求时,服务器就会重新开启一个端口连接。那么服务器端上没有接收到请求数据的上一个端口就一直开着,长此以往,这样的端口多了,就会造成服务器端开销的严重浪费。

还有一种情况是已经失效的客户端发出的请求信息,由于某种原因传输到了服务器端,服务器端以为是客户端发出的有效请求,接收后产生错误。

TCP的四次挥手:

1.所谓的四次挥手即TCP连接的释放(解除)。连接的释放必须是一方主动释放,另一方被动释放。以下为客户端主动发起释放连接的图解:
URG:紧急指针(urgent pointer)有效。
ACK:确认序号有效。
PSH:接收方应该尽快将这个报文交给应用层。
RST:重置连接。
SYN:发起一个新连接。
FIN:释放一个连接。
计算机网络_第9张图片
(1)首先客户端想要释放连接,向服务器端发送一段TCP报文,其中:

标记位为FIN,表示“请求释放连接“;
序号为Seq=U;
随后客户端进入FIN-WAIT-1阶段,即半关闭阶段。并且停止在客户端到服务器端方向上发送数据,但是客户端仍然能接收从服务器端传输过来的数据。
注意:这里不发送的是正常连接时传输的数据(非确认报文),而不是一切数据,所以客户端仍然能发送ACK确认报文。

(2)服务器端接收到从客户端发出的TCP报文之后,确认了客户端想要释放连接,随后服务器端结束ESTABLISHED阶段,进入CLOSE-WAIT阶段(半关闭状态)并返回一段TCP报文,其中:

标记位为ACK,表示“接收到客户端发送的释放连接的请求”;
序号为Seq=V;
确认号为Ack=U+1,表示是在收到客户端报文的基础上,将其序号Seq值加1作为本段报文确认号Ack的值;
随后服务器端开始准备释放服务器端到客户端方向上的连接。
客户端收到从服务器端发出的TCP报文之后,确认了服务器收到了客户端发出的释放连接请求,随后客户端结束FIN-WAIT-1阶段,进入FIN-WAIT-2阶段

前"两次挥手"既让服务器端知道了客户端想要释放连接,也让客户端知道了服务器端了解了自己想要释放连接的请求。于是,可以确认关闭客户端到服务器端方向上的连接了

(3)服务器端自从发出ACK确认报文之后,经过CLOSED-WAIT阶段,做好了释放服务器端到客户端方向上的连接准备,再次向客户端发出一段TCP报文,其中:

标记位为FIN,ACK,表示“已经准备好释放连接了”。注意:这里的ACK并不是确认收到服务器端报文的确认报文。
序号为Seq=W;
确认号为Ack=U+1;表示是在收到客户端报文的基础上,将其序号Seq值加1作为本段报文确认号Ack的值。
随后服务器端结束CLOSE-WAIT阶段,进入LAST-ACK阶段。并且停止在服务器端到客户端的方向上发送数据,但是服务器端仍然能够接收从客户端传输过来的数据。

(4)客户端收到从服务器端发出的TCP报文,确认了服务器端已做好释放连接的准备,结束FIN-WAIT-2阶段,进入TIME-WAIT阶段,并向服务器端发送一段报文,其中:

标记位为ACK,表示“接收到服务器准备好释放连接的信号”。
序号为Seq=U+1;表示是在收到了服务器端报文的基础上,将其确认号Ack值作为本段报文序号的值。
确认号为Ack=W+1;表示是在收到了服务器端报文的基础上,将其序号Seq值作为本段报文确认号的值。
随后客户端开始在TIME-WAIT阶段等待2MSL

为什么要客户端要等待2MSL呢?见后文。

服务器端收到从客户端发出的TCP报文之后结束LAST-ACK阶段,进入CLOSED阶段。由此正式确认关闭服务器端到客户端方向上的连接。

客户端等待完2MSL之后,结束TIME-WAIT阶段,进入CLOSED阶段,由此完成“四次挥手”。

后“两次挥手”既让客户端知道了服务器端准备好释放连接了,也让服务器端知道了客户端了解了自己准备好释放连接了。于是,可以确认关闭服务器端到客户端方向上的连接了,由此完成“四次挥手”。

与“三次挥手”一样,在客户端与服务器端传输的TCP报文中,双方的确认号Ack和序号Seq的值,都是在彼此Ack和Seq值的基础上进行计算的,这样做保证了TCP报文传输的连贯性,一旦出现某一方发出的TCP报文丢失,便无法继续"挥手",以此确保了"四次挥手"的顺利完成。

为什么“握手”是三次,“挥手”却要四次?

TCP释放连接时之所以需要“四次挥手”,是因为FIN释放连接报文与ACK确认接收报文是分别由第二次和第三次"握手"传输的。为何建立连接时一起传输,释放连接时却要分开传输?

建立连接时,被动方服务器端结束CLOSED阶段进入“握手”阶段并不需要任何准备,可以直接返回SYN和ACK报文,开始建立连接。
释放连接时,被动方服务器,突然收到主动方客户端释放连接的请求时并不能立即释放连接,因为还有必要的数据需要处理,所以服务器先返回ACK确认收到报文,经过CLOSE-WAIT阶段准备好释放连接之后,才能返回FIN释放连接报文。

所以是“三次握手”,“四次挥手”。

为什么客户端在TIME-WAIT阶段要等2MSL?

MSL指的是Maximum Segment Lifetime:一段TCP报文在传输过程中的最大生命周期。2MSL即是服务器端发出为FIN报文和客户端发出的ACK确认报文所能保持有效的最大时长。
服务器端在1MSL内没有收到客户端发出的ACK确认报文,就会再次向客户端发出FIN报文;
如果客户端在2MSL内,再次收到了来自服务器端的FIN报文,说明服务器端由于各种原因没有接收到客户端发出的ACK确认报文。客户端再次向服务器端发出ACK确认报文,计时器重置,重新开始2MSL的计时;
否则客户端在2MSL内没有再次收到来自服务器端的FIN报文,说明服务器端正常接收了ACK确认报文,客户端可以进入CLOSED阶段,完成“四次挥手”。

所以,客户端要经历时长为2SML的TIME-WAIT阶段;这也是为什么客户端比服务器端晚进入CLOSED阶段的原因

为什么tcp为什么要建立连接?

保证可靠传输

请你解释一下TCP为什么可靠一些

三次握手,超时重传,滑动窗口,拥塞控制。

请简单解释一下,arp协议和arp攻击。

ARP(Address Resolution Protocol)地址解析协议,目的是实现IP地址到MAC地址的转换。
在计算机间通信的时候,计算机要知道目的计算机是谁,这中间需要涉及到MAC地址,而MAC是真正的电脑的唯一标识符。
在OSI七层模型中上层网络关心的IP地址,下层网络关心的是MAC地址,这个时候需要映射IP和MAC。
ARP之简单请求应答

当两台计算机在同一个局域网通信,我们以ping命令为例,该命令使用的ICMP协议

计算机网络_第10张图片
ARP之广播请求单播回应
计算机网络_第11张图片
ARP攻击

计算机网络_第12张图片
我们知道,当PC1对PC2正常通信的时候(先别管攻击者PC3),PC2、PC1会先后建立对方的IP和MAC地址的映射(即建立ARP缓存表),同时对于交换机而言,它也具有记忆功能,会基于源MAC地址建立一个CAM缓存表(记录MAC对应接口的信息),理解为当PC1发送消息至交换机的Port1时,交换机会把源MAC(也就是MAC1)记录下来,添加一条MAC1和Port1的映射,之后交换机可以根据MAC帧的目的MAC进行端口转发,这个时候PC3只是处于监听状态,会把PC1的广播丢弃。

正常的PC3会把广播包丢弃,同样的PC3可以抓住这一环节的漏洞,把不属于自己的广播包接收,同时回应一个虚假的回应包,告诉PC1我就是PC2

(IP2-MAC3),这样PC1会收到两个回应包(一个正确的IP2-MAC2,一个虚假的IP2-MAC3),但是PC1并不知道到底哪个是真的,所以PC1会做出判断,并且判断后到达的为真,那么怎么让虚假的回应包后到达呢,PC3可以连续不断的发送这样的回应包,总会把哪个正确的回应包覆盖掉。

而后PC1会建立IP2-MAC3这样一条ARP缓存条目,以后当PC1给PC2发送信息的时候,PC1依据OSI模型从上至下在网络层给数据封装目的IP为IP2的包头,在链路层通过查询ARP缓存表封装目的MAC为MAC3的数据帧,送至交换机,根据查询CAM表,发现MAC3对应的接口为Port3,就这样把信息交付到了PC3,完成了一次ARP攻击。

如果ARP攻击严重话,会导致同一个局域网(也是同一个广播域)的所有主机的ARP缓存表中都存放着错误的IP和MAC的映射,如上图,每台主机的ARP缓存表中,不论哪个IP,都会映射到攻击者的MAC地址MAC1上,这样该局域网内的所有主机的消息都发送到Hacker的主机上。
来源:https://blog.csdn.net/ytx2014214081/article/details/83029763?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase

什么是icmp协议,它的作用是什么?

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

ICMP协议的功能主要有:

  1. 确认IP包是否成功到达目标地址
  2. 通知在发送过程中IP包被丢弃的原因

请你讲一下路由器和交换机的区别?

(1)外形上

交换机通常端口比较多,路由器端口少体积小,(路由器一般都集成了交换机的功能,LAN口就是作为交换机的端口来使,

WAN用于连接外网的端口。
(2)工作层次不同

交换机在数据链路层(实现数据帧的转发),而路由器在**网络层(**肩负着网络互连的作用)。
(3)数据的转发对象不同

交换机是根据MAC地址转发数据帧,而路由器是根据IP地址来转发数据报。IP地址决定最终数据要到达某一台主机,而MAC地址是决定下一跳将要交给哪一台设备(一般是交换机或者路由器),IP地址是软件实现的,可以描述主机所在的网络,MAC地址是硬件实现的,每一个网卡在出厂时都会将全世界唯一的MAC地址固化在ROM中,因此MAC不可改,IP可改
4)分工不同

交换机主要是用于组建局域网,而路由器则负责让主机连接外网,多台主机可以通过网线连接到交换机,这时候就组建好了局域网,就可以通过网线连接到交换机,这时就组建好了局域网,就可以将数据发给局域网中的其他主机,然而通过交换机组建的局域网是不能访问外网的,这时就需要路由器为我们来打开外网大门,局域网的所有主机使用的都是私网的IP,所以必须通过,路由器转换为公网IP之后才能访问外网

(5)冲突域和广播域

交换机分割冲突域,但不分割广播域,而路由器分割广播域。交换机连接的网段,仍属于同一个广播域,广播数据包会在交换机连接的所有网段上传播,这时会导致广播风暴和安全漏洞。而连接在路由器上的网段会被分配到不同的广播域。**路由器不会转发广播数据。**交换机会转发广播数据给局域网中的所有主机,值得说明的是单播的数据包在局域网中会被交换机唯一的送到目标主机,其他主机不会接受到数据,这是区别于原始的集线器的
————————————————
原文链接:https://blog.csdn.net/baidu_37964044/article/details/82289945

你可能感兴趣的:(计网)