当前位置: 首页 > Web前端 > HTML5

网络协议TCP

时间:2023-04-05 14:07:36 HTML5

为了实现计算机通信,我们为计算机定义了一系列通信规则。这些规则是协议。(数据格式封装+传输)OSI七层网络模型结构模型使得不同网格之间能够进行可靠的通信。将复杂的流程分解为多个功能相对单一的子流程。应用层:提供网络与用户应用软件之间的接口。(Web服务和最终用户之间的接口)表示层:提供格式化的表示和转换数据服务、加密和压缩。(数据表示、安全、压缩)会话层:提供建立和维护应用程序之间通信的机制,包括访问认证和会话管理。(Establish,manage,andterminatesession)传输层:提供传输连接的建立、维护和注销功能,负责数据的可靠传输。(定义用于数据传输、流量控制和错误检查的协议端口号)网络层:处理网络之间的路由,保证数据的及时传输。(逻辑地址寻址、不同网络间的路径选择)数据链路层:负责无错数据传输、确认帧、错误重传等(硬件物理地址寻址、逻辑连接、比特流差错控制)物理层:提供机械、电气、功能和工艺特性。(网卡、网线、双绞线、同轴电缆)OSI是一个理想的模型,所以一般的网络系统只涉及几层,很少有系统能拥有全部7层并完全遵循它的规定。在7层模型中,每一层都提供特定的网络功能。从网络功能来看:以下四层(物理层、数据链路层、网络层、传输层)主要提供数据传输和交换功能,即节点间的通信是主要功能;第四层为上下两层。两部分之间的桥梁是整个网络架构中最关键的部分;而上三层(会话层、表示层和应用层)主要提供用户与应用程序之间的信息和数据处理功能。简而言之,低4层主要完成通信子网的功能,高3层主要完成资源子网的功能。TCP/IP参考模型TCP/IP是TransmissionControlProtocol/InternetProtocol的缩写。早期的TCP/IP模型是四层结构网络接口层、网际层、传输层和应用层。后来,它使用OSI进行参考。七层参考模型将网络接口层分为物理层和数据链路层。TCP/IP协议是传输控制/Internet协议。它也被称为网络通信协议。它由网络层的IP协议和传输层的TCP协议组成。它是一大套协议。网络接口层(物理层和数据链路层)没有特定的协议,支持所有标准和专用协议。网络接口层是TCP/IP协议的底层。它负责接收来自上层的数据交接,并通过底层物理网络将数据报发送出去。这一层没有特定的协议。物理层:计算机传输数据时,传输的是0和1的数字,物理层关心的是用什么信号0,1是否可以双向通信,如何建立初始连接,如何终止连接连接,物理层是为数据传输提供可靠的环境,数据链路层:位于物理层和互联网层之间,用于向网络层提供数据(将数据从计算机传递给主机)MAC地址:在通讯过程中,网卡内置的地址用于识别计算机的身份。MAC地址由48位二进制组成,通常分为6段,用16位系统表示(前3段为供应商标识,后3段对应网卡唯一编号)。网络层(网络IP协议)位于网络接口层和传输层之间,用于通过若干中间节点向目的主机传输数据。,提供最基本的数据传输服务(路由、选址)选址:交换机根据mac地址寻找对应的主机,需要ip来确认电脑的位置路由:选择多个网络之间的最短路径roadsTransmissioncontrolandUDPuserdatagramprotocol)位于应用层和网络层之间,定义传输数据的协议和端口号,将数据分段打包传输,控制每个数据包序号的顺序,丢失和传输过程中的重发、丢弃处理、避免拥塞的流量控制常用TCP、UDTPTCP:传输控制协议。可靠,面向连接的协议,传输效率低)。数据被分段打包传输,并控制每个数据包序号的顺序。运输过程丢失、重发、丢弃。UDP:用户数据报协议,不可靠,无连接服务,传输效率高。发送方不关心发送的数据是否到达目标主机,数据是否有误等,接收数据的主机也不会告诉发送方数据是否收到,其可靠性由上层协议。在数据传输期间可以实现最小的开销。如果进程要发送很短的消息,对可靠性要求不高,可以使用应用层(HTTP、FTP、DNS)在应用层,各种数据如信件、数字、汉字、图片等转为二进制数据传输过程:从高位到低位,所有数据在应用层转为二进制。在传输层,对二进制数据进行分段,分成小数据段,再分成小数据段,并将某个段之后的数据封装在TCP报文头上。(TCP报文内部有一个字段信息,用于标识上层协议或应用,保证上层数据的正常通信)。在网络层,传输层封装的数据段被封装了IP头(IP头有一个IP地址,用来标识网络的逻辑地址)。数据链路层为网络层封装的数据加上MAC地址(MAC地址是固化在硬件设备内部的全球唯一物理地址)。物理层将这些二进制数字比特流转换成电信号并在网络中传输。从低物理层到高物理层,将电信信号转换成二进制数据发送到链路层。MAC报头在链路层处理。其余部分传递给网络层。网络层处理IP报头,其余部分传递给传输层。TCP报头在传输层处理,真正的数据传输到应用层。