计网
osi七层模型中每层的作用
- 物理层(Physical Layer):
- 主要任务是传输原始比特流,即0和1,通过物理媒介(如电缆、光纤、无线信号等)。
- 定义了传输媒介的特性,如电压、频率、传输速率等。
- 物理层的设备和组件包括电缆、集线器(Hub)等。
- 数据链路层(Data Link Layer):
- 提供了物理层上的数据传输的可靠性。
- 负责将原始比特流分为帧(Frames),并在同一物理网络上的节点之间传输这些帧。
- 处理错误检测和纠正,以确保数据的完整性。
- 常见的设备包括交换机(Switch)和网卡(Network Interface Card,NIC)。
- 网络层(Network Layer):
- 负责为数据包选择最佳的路径,并进行路由选择,以将数据从源节点传输到目标节点。
- 该层使用IP地址来标识设备和子网。
- 常见的协议包括IP(Internet Protocol)以及路由器(Router)是网络层设备的代表。
- 传输层(Transport Layer):
- 提供端到端的数据传输服务,确保数据的可靠性和完整性。
- 主要协议包括TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)。
- TCP负责建立可靠的连接,而UDP则提供了无连接的快速数据传输。
- 会话层(Session Layer):
- 管理不同设备之间的通信会话。
- 提供会话的建立、维护和终止功能。
- 在数据传输过程中处理会话恢复和错误处理。
- 表示层(Presentation Layer):
- 负责数据的格式转换、数据加密和解密,以确保不同系统之间可以正确解释和处理数据。
- 处理数据的编码、压缩和加密,以提高数据的安全性和效率。
- 应用层(Application Layer):
- 最上层,直接与用户应用程序和网络服务交互。
- 提供了各种网络应用和服务,如Web浏览、电子邮件、文件传输和远程访问。
- 通常涉及用户界面和应用程序的功能。
网络协议
TCP/IP协议套件: TCP/IP协议套件是互联网的基础,它包括一组协议,用于在计算机之间进行通信。这些协议可以分为四个主要层次,与OSI模型不完全匹配,但具有相似的功能。
- 网络接口层:对应OSI模型的物理层和数据链路层,包括以太网、Wi-Fi和PPP等协议,用于设备之间的物理连接和数据传输。
- 网络层:对应OSI模型的网络层,包括IP协议,用于在网络上寻址和路由数据包。
- 传输层:对应OSI模型的传输层,包括TCP(传输控制协议)和UDP(用户数据报协议),用于端到端的数据传输和错误检测。
- 应用层:对应OSI模型的应用层,包括各种应用层协议,如HTTP、FTP、SMTP、POP3、IMAP和DNS,用于支持不同的网络应用。
HTTP/HTTPS: HTTP(Hypertext Transfer Protocol)和HTTPS(HTTP Secure)是用于在Web上传输数据的协议。它们是应用层协议,用于客户端(浏览器)和Web服务器之间的通信。
- HTTP:HTTP是一种无状态协议,用于请求和传输Web页面、图像、文本等内容。HTTP通常使用端口80进行通信,但是它是明文传输,容易受到中间人攻击。因此,HTTP通信不安全。
- HTTPS:HTTPS是HTTP的安全版本,它使用TLS/SSL加密来保护数据传输的隐私和完整性。HTTPS通常使用端口443进行通信,是更安全的选择,用于敏感信息的传输,如在线支付和个人身份验证。
FTP: FTP(File Transfer Protocol)是用于在网络上传输文件的协议,属于应用层协议。它允许用户上传和下载文件到远程服务器。FTP使用端口21(控制连接)和端口20(数据连接)进行通信。
FTP有两种主要模式:
- 主动模式:在主动模式下,客户端打开一个随机端口,并通知服务器要连接的端口号。服务器从其端口20向客户端的指定端口发送数据。
- 被动模式:在被动模式下,服务器打开一个随机端口,并通知客户端要连接的端口号。客户端从服务器指定的端口接收数据。
SMTP/POP3/IMAP: SMTP(Simple Mail Transfer Protocol)、POP3(Post Office Protocol 3)和IMAP(Internet Message Access Protocol)是用于电子邮件通信的协议,都属于应用层协议。
- SMTP:SMTP用于发送电子邮件。当您发送电子邮件时,您的电子邮件客户端使用SMTP将邮件传递给邮件服务器,然后服务器将邮件传递给接收者的邮件服务器。
- POP3:POP3用于从邮件服务器上下载电子邮件到本地计算机。它通常会从服务器上将邮件删除,因此邮件只存储在本地。
- IMAP:IMAP也用于从邮件服务器上下载电子邮件,但与POP3不同,它通常在服务器上保留邮件的副本,允许用户在多个设备上同步和管理邮件。
DNS: DNS(Domain Name System)是一种分布式的命名系统,用于将人类可读的域名转换为计算机可理解的IP地址。DNS属于应用层协议。
DNS的主要功能包括:
- 域名解析:将域名解析为IP地址。
- 域名缓存:在本地存储解析过的域名和IP地址,以提高性能。
- 分层命名空间:DNS使用层次结构的域名体系,例如.com、.org、.net等顶级域名(TLD)和二级域名。
DNS使用UDP端口53进行通信,但对于大型响应或安全性要求较高的查询,可以使用TCP。 DNS是互联网中的关键基础设施,使人们可以轻松访问Web和其他网络资源
子网划分
- IP地址的结构:
- IPv4地址通常由32位二进制数字组成,通常以点分十进制表示(例如,192.168.1.1)。
- IPv4地址分为网络部分和主机部分。网络部分用于标识网络,而主机部分用于标识特定设备。
- 子网掩码:
- 子网掩码是用于划分IP地址的工具,它指定了哪些部分是网络部分,哪些部分是主机部分。
- 子网掩码通常由32位二进制数字组成,但前面的一部分是连续的1,后面是连续的0,例如,255.255.255.0可以用二进制表示为11111111.11111111.11111111.00000000。
- 子网掩码中1的部分表示网络部分,0的部分表示主机部分。在上面的示例中,前24位用于网络,后8位用于主机。
- 子网划分的原因:
- 管理性:将大的IP地址范围划分为子网使网络管理更容易。每个子网可以由不同的管理员管理,可以有不同的规则和安全性设置。
- 性能:子网划分有助于减少广播域的大小,提高网络性能。较小的广播域可以减少广播流量。
- 安全性:子网划分可以实施访问控制列表(ACL)和防火墙规则,提高网络安全性。
- 子网划分的步骤:
- 选择要划分的IP地址范围。
- 决定子网的大小,即每个子网包含的IP地址数量。这通常是2的幂次方,例如,2^3=8个IP地址的子网。
- 创建子网掩码,确定网络部分和主机部分的位数。
- 为每个子网分配一个子网ID(通常是网络部分的第一个IP地址)。
- 分配剩余的IP地址给子网内的主机。
VLAN
虚拟局域网(VLAN)是一种网络技术,允许将一个物理局域网(LAN)划分为多个逻辑上独立的虚拟局域网,每个虚拟局域网都有自己的广播域。这种技术有助于提高网络性能、安全性和管理性。以下是关于VLAN的详细解释:
- VLAN的工作原理:
- VLAN通过在交换机或路由器上对网络设备进行配置来实现。每个VLAN都有一个唯一的标识符,通常是一个整数,称为VLAN ID。
- 虚拟局域网是根据VLAN ID来区分的。设备可以被分配到一个特定的VLAN,从而决定了它们在哪个虚拟局域网中。
- 数据帧在VLAN内部流动,但不会跨越VLAN传播,除非使用路由器或三层交换机。
- VLAN的优点:
- 隔离和安全性:不同VLAN的设备无法直接互相通信,这有助于提高网络安全性。
- 广播域控制:每个VLAN都有自己的广播域,减少了广播流量对整个网络的影响。
- 性能优化:可以将关键应用或服务器分配到一个单独的VLAN,以确保它们获得足够的带宽和低延迟。
- 灵活性:VLAN可以根据网络需求轻松重新配置,而无需物理拓扑更改。
- VLAN的类型:
- 静态VLAN:管理员手动配置VLAN成员资格,将设备分配到特定的VLAN。
- 动态VLAN:使用VLAN Trunking协议(如VTP)或其他自动化方法,根据设备的属性(如MAC地址或用户名)自动将设备分配到VLAN。
- VLAN标记:
- 802.1Q标准定义了VLAN标记协议,允许在数据帧中添加VLAN标签。这允许数据帧在交换机之间传输时保持其VLAN成员身份。
- VLAN标记是在以太网帧的帧头中的一个额外字段,指示了数据帧所属的VLAN。这允许交换机在不移除标记的情况下转发数据帧。
- VLAN和路由:
- 不同的VLAN通常需要路由器或三层交换机来进行通信。这些设备可以用于连接不同VLAN,允许跨VLAN的通信。
- 一些路由器支持子接口,每个子接口可以与不同的VLAN相关联,从而实现逻辑隔离。
- VLAN的应用:
- 企业内部网络:划分不同部门、项目或安全区域的VLAN,以增强网络安全性和管理性。
- 云服务提供商:为不同的客户或租户提供虚拟专用网络,以确保他们的网络流量隔离。
- 数据中心:将服务器和存储资源组织到不同的VLAN,以提供性能隔离和灵活性。
总之,虚拟局域网(VLAN)是一项强大的网络技术,可帮助组织在单个物理网络上实现逻辑隔离、提高网络性能和安全性,并增加网络管理的灵活性。通过合理配置和管理VLAN,可以更好地满足不同网络环境的需求。
安全性
-
防火墙:
- 什么是防火墙:
- 防火墙是一种网络安全设备或软件,用于监控、过滤和控制网络流量,以保护网络不受未经授权的访问、恶意活动和网络攻击的影响。
- 防火墙可以部署在网络的边缘、内部或在终端设备上,根据需要来过滤和管理流量。
- 防火墙的工作原理:
- 防火墙通过规则集(通常称为防火墙策略)来定义允许或拒绝的网络流量。这些规则可以基于IP地址、端口、协议和应用程序等因素进行配置。
- 防火墙可以进行状态检查,以确保入站和出站的数据包是与已建立连接相关的有效流量。
- 防火墙还可以执行深度数据包检查,检测并拦截潜在的恶意代码、攻击和威胁。
- 防火墙的类型:
- 网络防火墙:部署在网络边缘,通常用于保护整个内部网络免受外部威胁。
- 主机防火墙:安装在个别计算机上,用于保护单个主机或终端设备。
- 应用程序防火墙:专注于保护特定应用程序或服务,例如Web应用程序防火墙(WAF)。
- 防火墙的用途:
- 防火墙可以防止未经授权的访问和网络入侵。
- 它们可以限制恶意软件和病毒的传播。
- 防火墙有助于确保网络资源的可用性和数据的隐私。
- 它们还用于合规性和监管要求的满足。
VPN(虚拟私有网络):
- 什么是VPN:
- VPN是一种用于在公共网络上创建安全连接(专用网络)的技术,以确保数据的保密性和完整性。
- 它允许远程用户或分支机构连接到公司网络,就像它们是直接连接到本地网络一样。
- VPN的工作原理:
- VPN通过使用加密协议来创建安全的通信隧道,以保护数据的传输。常见的协议包括IPsec、OpenVPN和SSL/TLS。
- 用户或分支机构的设备建立VPN连接到远程VPN服务器,将所有的通信通过安全通道传输。
- VPN服务器解密数据包,将其路由到内部网络,然后将响应数据包重新加密并传输回用户设备。
- VPN的用途:
- 远程访问:员工可以安全地从远程地点访问公司网络和资源,而无需直接连接到公司的物理网络。
- 分支办公室连接:多个分支机构可以通过VPN连接到总部,实现内部网络的安全互连。
- 保护隐私:VPN可用于保护用户在公共Wi-Fi网络上的数据免受窥探,确保在线隐私。
- 绕过地理限制:VPN还可用于访问特定地理位置受限的内容,如流媒体服务和网站。
综上所述,防火墙和VPN都是关键的网络安全工具,用于保护网络资源、数据和通信的安全性和隐私。防火墙用于控制流量和防止未经授权的访问,而VPN用于创建安全的网络连接,以确保数据的机密性和完整性。
- 什么是防火墙:
无线网络
-
Wi-Fi标准:
Wi-Fi是一种无线通信技术,用于将设备连接到互联网或局域网,通常通过无线接入点(AP)或路由器。Wi-Fi标准是指定义了无线网络通信规范的技术规范,其中最常见的是由IEEE(Institute of Electrical and Electronics Engineers)制定的标准。以下是一些常见的Wi-Fi标准:
- 802.11b:发布于1999年,工作在2.4GHz频段,最高传输速率为11 Mbps。
- 802.11a:发布于1999年,工作在5GHz频段,最高传输速率为54 Mbps。提供了更大的带宽和抗干扰能力。
- 802.11g:发布于2003年,工作在2.4GHz频段,最高传输速率为54 Mbps。向后兼容802.11b。
- 802.11n:发布于2009年,工作在2.4GHz和5GHz频段,最高传输速率可达300 Mbps或更高。支持MIMO(多输入多输出)技术,提高了覆盖范围和性能。
- 802.11ac:发布于2013年,工作在5GHz频段,最高传输速率可达1 Gbps或更高。使用更多的MIMO流和更大的信道宽度,提供更高的速度和性能。
- 802.11ax:也称为Wi-Fi 6,发布于2019年,工作在2.4GHz和5GHz频段,具有更高的容量、更高的速度和更好的性能。支持OFDMA(正交频分多路复用)和MU-MIMO(多用户多输入多输出)等技术。
- 802.11ay:一个尚未广泛采用的标准,用于高速、高容量的数据传输,特别适用于特定用途,如无线回传和高带宽要求的应用。
这些Wi-Fi标准通过不断提高速度、性能和容量,使无线网络更适用于各种应用,包括移动设备、家庭网络、企业网络和公共热点。
WLAN(无线局域网):
WLAN是一种无线局域网络,是用于在有限范围内建立无线连接的技术。它通常用于替代有线局域网,提供更大的灵活性和便利性。以下是WLAN的详细解释:
- 组成要素:
- WLAN由无线客户端设备(如笔记本电脑、智能手机、平板电脑)和无线接入点(AP)组成。
- 无线接入点是连接有线局域网和无线设备的桥梁,负责将无线设备的数据传输转发到有线网络。
- 工作原理:
- 无线设备通过Wi-Fi标准与无线接入点进行通信。
- 无线接入点连接到有线局域网,并充当数据传输的中继站。
- 无线客户端设备可以在无线网络范围内自由移动,与接入点进行连接,并访问有线网络资源和互联网。
- 应用:
- WLAN用于家庭网络、企业网络、公共热点、学校和医院等各种场所,提供无线接入和连接。
- 它使人们能够随时随地访问互联网和内部网络资源,无需使用有线连接。
- 安全性:
- 由于WLAN是无线的,因此需要采取安全措施,以防止未经授权的访问和数据泄露。这包括加密、访问控制和身份验证等安全机制。
网络设备
-
1. 路由器(Router):
-
作用:路由器是一种网络设备,用于连接不同的网络并在它们之间转发数据包。它在网络中起到交通管理的作用,决定数据包应该如何传输,并确定最佳路径。
-
功能
:路由器能够执行以下功能:
- 路由:根据目标IP地址将数据包从一个网络发送到另一个网络。路由器使用路由表来确定数据包的下一跳路径。
- 网络地址转换(NAT):允许多个设备共享一个公共IP地址,通常用于家庭或小型办公室网络。
- 分割广播域:路由器将不同的物理或逻辑网络分开,以减少广播流量的传播范围。
-
位置:通常位于不同网络之间,如互联网与局域网之间,或不同的局域网之间。
-
协议:路由器使用路由协议(如OSPF、BGP、RIP)来学习和维护路由表,以确定数据包的路由。
2. 交换机(Switch):
-
作用:交换机是一种局域网设备,用于在局域网中的设备之间交换数据帧。它将数据帧从源设备转发到目标设备,以提供高速、低延迟的局域网通信。
-
功能
:交换机执行以下功能:
- 学习MAC地址:交换机学习连接到它的设备的MAC地址,并将这些地址存储在MAC地址表中,以便将数据帧定向到正确的目标设备。
- 转发数据:当数据帧到达时,交换机使用MAC地址表将数据帧发送到目标设备,而不是广播到整个网络。
-
位置:通常位于局域网内,用于连接多台计算机、服务器和其他网络设备。
-
协议:交换机在数据链路层(第二层)操作,通常不涉及路由或IP地址。
3. 防火墙(Firewall):
-
作用:防火墙是一种网络安全设备,用于监控、过滤和控制网络流量,以保护网络免受未经授权的访问、恶意活动和网络攻击的影响。
-
功能
:防火墙执行以下功能:
- 数据包过滤:根据规则集过滤网络流量,允许或拒绝数据包的传输。
- 状态检查:检查网络连接的状态,确保入站和出站数据包是与已建立连接相关的有效流量。
- 深度数据包检查:检测并拦截潜在的恶意代码、攻击和威胁。
-
位置:通常位于网络的边缘,用于保护内部网络免受外部威胁。
-
协议:防火墙可以在多个网络层次上工作,包括网络层(路由层)、传输层和应用层。
4. 网关(Gateway):
-
作用:网关是网络中的连接点,充当不同网络之间的桥梁,用于数据包的路由和转发。它可以连接不同协议、不同类型的网络,如局域网与互联网之间。
-
功能
:网关执行以下功能:
- 协议转换:将来自一个网络的数据转换为适用于另一个网络的协议,以实现互操作性。
- 数据包路由:根据目标地址将数据包从一个网络传输到另一
-
ip地址和mac地址的区别
1. OSI模型层次:
- IP地址位于网络层(第三层),用于标识主机或设备在网络中的位置。
- MAC地址位于数据链路层(第二层),用于在局域网中唯一标识网络适配器。
2. 标识的范围:
- IP地址是全球唯一的地址,用于在全球互联网上唯一标识设备。它允许设备跨越不同网络进行通信。
- MAC地址是在一个局域网内唯一的地址,用于在局域网中唯一标识设备。它通常不跨越不同网络。
3. 格式:
- IP地址通常采用IPv4或IPv6格式,IPv4地址是32位的数字(如192.168.1.1),而IPv6地址是128位的十六进制数(如2001:0db8:85a3:0000:0000:8a2e:0370:7334)。
- MAC地址通常采用12个十六进制数字对的格式,由于其固定长度,它的表示方式是唯一的(例如,00:1A:2B:3C:4D:5E)。
4. 作用:
- IP地址用于路由数据包,使其能够在不同的网络之间传输。它允许设备之间的全球互联。
- MAC地址用于在同一局域网内唯一标识设备,以便在局域网中直接交换数据帧。
5. 隐私性:
- IP地址通常是公开的,因为它们用于路由数据,允许设备之间的通信。然而,IPv6的隐私扩展功能可以改善IP地址的隐私性。
- MAC地址通常是私有的,不直接公开。但在某些情况下,它们可能会被暴露,例如在局域网上的数据包中。
6. 动态性:
- IP地址可以是动态分配的,例如通过DHCP(动态主机配置协议)。这意味着设备可以在不同的网络中获取不同的IP地址。
- MAC地址通常是静态的,由设备制造商分配。它们在设备生命周期中通常不会更改。
综上所述,IP地址和MAC地址都是网络中重要的标识符,但它们在用途、范围、格式和层次等方面存在明显的区别。 IP地址用于全球互联网上的路由和通信,而MAC地址用于局域网内设备的唯一标识。
dns域名解析过程
*
- 本地DNS缓存查询:
- 当你的设备首次尝试访问一个域名时,它会首先检查自己的本地DNS缓存,看看是否已经解析过该域名。如果已经有解析结果,设备将直接使用它,无需继续查询。
- 递归查询:
- 如果本地DNS缓存没有解析结果,设备会将解析请求发送给本地DNS服务器(通常由你的ISP提供)。这个DNS服务器通常被称为递归DNS服务器,因为它将负责完成整个解析过程。
- 本地DNS服务器首先查询自己的缓存,如果找到匹配的解析结果,则返回给设备。
- 根DNS服务器查询:
- 如果本地DNS服务器没有找到域名解析结果,它将向根DNS服务器发起查询。根DNS服务器是DNS层次结构的最高级别,它不会具体解析域名,但会指向负责特定顶级域(如.com、.org、.net)的顶级DNS服务器。
- 顶级DNS服务器查询:
- 根DNS服务器将返回一个指向适当顶级域DNS服务器的IP地址。例如,如果要解析的域名是www.example.com,根DNS服务器将指向.com顶级域DNS服务器。
- 本地DNS服务器然后向顶级域DNS服务器发出查询请求。
- 权威DNS服务器查询:
- 顶级域DNS服务器将返回一个指向负责特定域名的权威DNS服务器的IP地址。在我们的示例中,它将指向example.com的权威DNS服务器。
- 域名解析:
- 本地DNS服务器最终将查询发送到权威DNS服务器,权威DNS服务器会查找并返回与请求域名(www.example.com)对应的IP地址。ip-u20k9dv68buqg717e./)
- 本地DNS服务器将这个IP地址存储在缓存中,以供以后的查询使用,同时将解析结果返回给设备。
- 设备访问目标服务器:
- 一旦设备获得目标域名的IP地址,它可以使用这个IP地址与目标服务器建立连接,并访问所需的网站或服务。
这个过程通常在毫秒级别内完成,用户通常不会察觉到域名解析的发生。DNS的目的是将用户友好的域名映射到计算机可理解的IP地址,以便网络通信和访问互联网资源。
tcp和udp
1. 连接导向 vs. 无连接:
- TCP是连接导向的协议,它在通信之前建立一个连接,确保可靠的数据传输,并在数据传输完成后关闭连接。这意味着数据按顺序传输,且不会丢失或损坏,但可能会引入一些延迟。
- UDP是无连接的协议,它直接发送数据包,不建立连接,也不保证数据的可靠性。UDP更适用于实时应用程序,如音频和视频流,因为它可以提供更低的延迟,但数据可能会丢失或乱序。
2. 可靠性:
- TCP提供可靠的数据传输,它使用确认、重传和流量控制等机制来确保数据的完整性和可靠性。如果数据包丢失或损坏,TCP会重新发送它们。
- UDP不提供可靠性保障,数据包可能会在传输过程中丢失或以不同顺序到达目标,因此应用程序需要自行处理数据的完整性和顺序问题。
3. 面向字节流 vs. 面向报文:
- TCP是面向字节流的协议,它将数据视为连续的字节流,并使用序列号来保持数据的顺序。这意味着应用程序可以读取任意大小的数据块。
- UDP是面向报文的协议,它将数据划分为报文(数据包)并直接发送。每个UDP数据包都是独立的,没有字节流的概念,应用程序必须明确知道报文的大小。
4. 流量控制和拥塞控制:
- TCP具有流量控制和拥塞控制机制,以避免网络拥塞和确保数据的可靠传输。
- UDP没有内置的流量控制和拥塞控制,应用程序需要自行实施这些控制机制。
5. 应用场景:
-
TCP通常用于需要可靠数据传输的应用程序,如Web浏览、电子邮件、文件传输和远程登录。
-
UDP通常用于实时应用程序,如音频和视频流、在线游戏、VoIP通信以及某些广播通信,其中低延迟更为重要。
6. 应用场景:
- TCP点对点
- UDPUDP支持一对一,一对多,多对一和多对多的交互通信
三次握手和四次会受
当要建立一个连接的时候,刚开始,客户端处于closed状态,服务端处于listen状态。然后:
1.第一次握手:客户端给服务端发一个 SYN 报文,并指明客户端的初始化序列号ISN(c)(这个序列号是为了后面的可靠传输做准备,是动态生成的,以防止网络攻击)。此时客户端处于 SYN_Sent 状态。
2.第二次握手:服务器收到客户端的 SYN 报文之后,会以自己的 SYN 报文作为应答,并且也是指定了自己的初始化序列号 ISN(s),同时会把客户端的 ISN + 1 作为 ACK 的值,表示自己已经收到了客户端的 SYN,此时服务器处于 SYN_REVD 的状态。
3.第三次握手:客户端收到 SYN 报文之后,会发送一个 ACK 报文,当然,也是一样把服务器的 ISN + 1 作为 ACK 的值,表示已经收到了服务端的 SYN 报文,此时客户端处于 establised 状态。
服务器收到 ACK 报文之后,也处于 establised 状态,此时,双方以建立起了链接。
为什么要进行三次握手?
握手要确定客户端与服务端均具有发送和接收消息的能力。三次握手的具体确认有如下几个方面:
第一次握手:客户端发送网络包,服务端收到了。这样服务端就能得出结论:客户端的发送能力、服务端的接收能力是正常的。
第二次握手:服务端发包,客户端收到了。这样客户端就能得出结论:服务端的接收、发送能力,客户端的接收、发送能力是正常的。不过此时服务器并不能确认客户端的接收能力是否正常。
第三次握手:客户端发包,服务端收到了。这样服务端就能得出结论:客户端的接收、发送能力正常,服务器自己的发送、接收能力也正常。
三、TCP四次挥手
刚开始双方都处于 establised 状态,假如是客户端先发起关闭请求,则:
1.第一次挥手:客户端发送一个 FIN 报文,报文中会指定一个序列号。此时客户端处于CLOSED_WAIT1状态。
2.第二次挥手:服务端收到 FIN 之后,会发送 ACK 报文,且把客户端的序列号值 + 1 作为 ACK 报文的序列号值,表明已经收到客户端的报文了,此时服务端处于CLOSE_WAIT2状态。
3.第三次挥手:如果服务端也想断开连接了,和客户端的第一次挥手一样,发给 FIN 报文,且指定一个序列号。此时服务端处于 LAST_ACK 的状态。
4.第四次挥手:客户端收到 FIN 之后,一样发送一个 ACK 报文作为应答,且把服务端的序列号值 + 1 作为自己 ACK 报文的序列号值,此时客户端处于 TIME_WAIT 状态。需要过一阵子以确保服务端收到自己的 ACK 报文之后才会进入 CLOSED 状态。
服务端收到 ACK 报文之后,就处于关闭连接了,处于 CLOSED 状态。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构