三次握手原则(什么是三次握手)

      最后更新:2023-03-30 11:18:57 手机定位技术交流文章

      TCP协议的三次握手漏洞问题!

      你说的正确,第三个包不给服务器回,或者使用虚假的源IP,大量发起到服务器的访问,很容易就能够耗尽服务器的TCP队列。你的第三个包话错了,是一个ack,不是syn 但是这种简单的SYN FLOOD攻击很容易就能被防火墙拦截。回答完了,可以拿分了吧?
      基于TCP/IP 端口扫描技术 [摘要] 本文讲述了TCP联接的建立过程,以及介绍了一些经典的扫描器以及所谓的SYN扫描器的使用,以及隐藏攻击源的技术,最好介绍了另外一些扫描技术。考虑了一些不是基于TCP端口和主要用来进行安全扫描的扫描工具(例如SATAN)。另外分析了使用扫描器的栈指纹。栈指纹通过检测主机TCP并将应答跟已知操作系统TCP/IP协议栈应答相比较,解决了识别操作系统的问题。 关键字:TCP/IP,UDP,三阶段握手,SYN扫描,FIN扫描,秘密扫描,间接扫描,诱骗扫描,指纹,协作扫描。--------------------------------------------------------------------------------正文:端口扫描技术前言第一部分,我们讲述TCP连接的建立过程(通常称作三阶段握手),然后讨论与扫描程序有关的一些实现细节。然后,简单介绍一下经典的扫描器(全连接)以及所谓的SYN(半连接)扫描器。第三部分主要讨论间接扫描和秘密扫描,还有隐藏攻击源的技术。秘密扫描基于FIN段的使用。在大多数实现中,关闭的端口对一个FIN 段返回一个RST,但是打开的端口通常丢弃这个段,不作任何回答。间接扫描,就像它的名字,是用一个欺骗主机来帮助实施,这台主机通常不是自愿的。第四部分介绍了一种与应用协议有关扫描。这些扫描器通常利用协议实现中的一些缺陷或者错误。认证扫描(ident scanning)也被成为代理扫描(proxy scanning)。最后一部分,介绍了另外一些扫描技术。考虑了一些不是基于TCP端口和主要用来进行安全扫描的扫描工具(例如SATAN)。另外分析了使用扫描器的栈指纹。栈指纹通过检测主机TCP并将应答跟已知操作系统TCP/IP协议栈应答相比较,解决了识别操作系统的问题。一:TCP/IP相关问题连接端及标记IP地址和端口被称作套接字,它代表一个TCP连接的一个连接端。为了获得TCP服务,必须在发送机的一个端口上和接收机的一个端口上建立连接。TCP连接用两个连接端来区别,也就是(连接端1,连接端2)。连接端互相发送数据包。一个TCP数据包包括一个TCP头,后面是选项和数据。一个TCP头包含6个标志位。它们的意义分别为:SYN: 标志位用来建立连接,让连接双方同步序列号。如果SYN=1而ACK=0,则表示该数据包为连接请求,如果SYN=1而ACK=1则表示接受连接。FIN: 表示发送端已经没有数据要求传输了,希望释放连接。RST: 用来复位一个连接。RST标志置位的数据包称为复位包。一般情况下,如果TCP收到的一个分段明显不是属于该主机上的任何一个连接,则向远端发送一个复位包。URG: 为紧急数据标志。如果它为1,表示本数据包中包含紧急数据。此时紧急数据指针有效。ACK: 为确认标志位。如果为1,表示包中的确认号时有效的。否则,包中的确认号无效。PSH: 如果置位,接收端应尽快把数据传送给应用层。TCP连接的建立TCP是一个面向连接的可靠传输协议。面向连接表示两个应用端在利用TCP传送数据前必须先建立TCP连接。 TCP的可靠性通过校验和,定时器,数据序号和应答来提供。通过给每个发送的字节分配一个序号,接收端接收到数据后发送应答,TCP协议保证了数据的可靠传输。数据序号用来保证数据的顺序,剔除重复的数据。在一个TCP会话中,有两个数据流(每个连接端从另外一端接收数据,同时向对方发送数据),因此在建立连接时,必须要为每一个数据流分配ISN(初始序号)。为了了解实现过程,我们假设客户端C希望跟服务器端S建立连接,然后分析连接建立的过程(通常称作三阶段握手):1: C --SYN XXà S2: C ?-SYN YY/ACK XX+1------- S3: C ----ACK YY+1--à S1:C发送一个TCP包(SYN 请求)给S,其中标记SYN(同步序号)要打开。SYN请求指明了客户端希望连接的服务器端端口号和客户端的ISN(XX是一个例子)。2:服务器端发回应答,包含自己的SYN信息ISN(YY)和对C的SYN应答,应答时返回下一个希望得到的字节序号(YY+1)。3:C 对从S 来的SYN进行应答,数据发送开始。一些实现细节大部分TCP/IP实现遵循以下原则:1:当一个SYN或者FIN数据包到达一个关闭的端口,TCP丢弃数据包同时发送一个RST数据包。2:当一个RST数据包到达一个监听端口,RST被丢弃。3:当一个RST数据包到达一个关闭的端口,RST被丢弃。4:当一个包含ACK的数据包到达一个监听端口时,数据包被丢弃,同时发送一个RST数据包。5:当一个SYN位关闭的数据包到达一个监听端口时,数据包被丢弃。6:当一个SYN数据包到达一个监听端口时,正常的三阶段握手继续,回答一个SYN ACK数据包。7:当一个FIN数据包到达一个监听端口时,数据包被丢弃。"FIN行为"(关闭得端口返回RST,监听端口丢弃包),在URG和PSH标志位置位时同样要发生。所有的URG,PSH和FIN,或者没有任何标记的TCP数据包都会引起"FIN行为"。二:全TCP连接和SYN扫描器全TCP连接全TCP连接是长期以来TCP端口扫描的基础。扫描主机尝试(使用三次握手)与目的机指定端口建立建立正规的连接。连接由系统调用connect()开始。对于每一个监听端口,connect()会获得成功,否则返回-1,表示端口不可访问。由于通常情况下,这不需要什么特权,所以几乎所有的用户(包括多用户环境下)都可以通过connect来实现这个技术。这种扫描方法很容易检测出来(在日志文件中会有大量密集的连接和错误记录)。Courtney,Gabriel和TCP Wrapper监测程序通常用来进行监测。另外,TCP Wrapper可以对连接请求进行控制,所以它可以用来阻止来自不明主机的全连接扫描。TCP SYN扫描在这种技术中,扫描主机向目标主机的选择端口发送SYN数据段。如果应答是RST,那么说明端口是关闭的,按照设定就探听其它端口;如果应答中包含SYN和ACK,说明目标端口处于监听状态。由于所有的扫描主机都需要知道这个信息,传送一个RST给目标机从而停止建立连接。由于在SYN扫描时,全连接尚未建立,所以这种技术通常被称为半打开扫描。SYN扫描的优点在于即使日志中对扫描有所记录,但是尝试进行连接的记录也要比全扫描少得多。缺点是在大部分操作系统下,发送主机需要构造适用于这种扫描的IP包,通常情况下,构造SYN数据包需要超级用户或者授权用户访问专门的系统调用。三:秘密扫描与间接扫描秘密扫描技术由于这种技术不包含标准的TCP三次握手协议的任何部分,所以无法被记录下来,从而必SYN扫描隐蔽得多。另外,FIN数据包能够通过只监测SYN包的包过滤器。秘密扫描技术使用FIN数据包来探听端口。当一个FIN数据包到达一个关闭的端口,数据包会被丢掉,并且回返回一个RST数据包。否则,当一个FIN数据包到达一个打开的端口,数据包只是简单的丢掉(不返回RST)。Xmas和Null扫描是秘密扫描的两个变种。Xmas扫描打开FIN,URG和PUSH标记,而Null扫描关闭所有标记。这些组合的目的是为了通过所谓的FIN标记监测器的过滤。秘密扫描通常适用于UNIX目标主机,除过少量的应当丢弃数据包却发送reset信号的操作系统(包括CISCO,BSDI,HP/UX,MVS和IRIX)。在Windows95/NT环境下,该方法无效,因为不论目标端口是否打开,操作系统都发送RST。跟SYN扫描类似,秘密扫描也需要自己构造IP 包。间接扫描间接扫描的思想是利用第三方的IP(欺骗主机)来隐藏真正扫描者的IP。由于扫描主机会对欺骗主机发送回应信息,所以必须监控欺骗主机的IP行为,从而获得原始扫描的结果。间接扫描的工作过程如下:假定参与扫描过程的主机为扫描机,隐藏机,目标机。扫描机和目标记的角色非常明显。隐藏机是一个非常特殊的角色,在扫描机扫描目的机的时候,它不能发送任何数据包(除了与扫描有关的包)。四:认证扫描和代理扫描认证扫描到目前为止,我们分析的扫描器在设计时都只有一个目的:判断一个主机中哪个端口上有进程在监听。然而,最近的几个新扫描器增加了其它的功能,能够获取监听端口的进程的特征和行为。认证扫描是一个非常有趣的例子。利用认证协议,这种扫描器能够获取运行在某个端口上进程的用户名(userid)。认证扫描尝试与一个TCP端口建立连接,如果连接成功,扫描器发送认证请求到目的主机的113TCP端口。认证扫描同时也被成为反向认证扫描,因为即使最初的RFC建议了一种帮助服务器认证客户端的协议,然而在实际的实现中也考虑了反向应用(即客户端认证服务器)。代理扫描文件传输协议(FTP)支持一个非常有意思的选项:代理ftp连接。这个选项最初的目的(RFC959)是允许一个客户端同时跟两个FTP服务器建立连接,然后在服务器之间直接传输数据。然而,在大部分实现中,实际上能够使得FTP服务器发送文件到Internet的任何地方。许多攻击正是利用了这个缺陷。最近的许多扫描器利用这个弱点实现ftp代理扫描。ftp端口扫描主要使用ftp代理服务器来扫描tcp端口。扫描步骤如下:1:假定S是扫描机,T是扫描目标,F是一个ftp服务器,这个服务器支持代理选项,能够跟S和T建立连接。2:S与F建立一个ftp会话,使用PORT命令声明一个选择的端口(称之为p-T)作为代理传输所需要的被动端口。3:然后S使用一个LIST命令尝试启动一个到p-T的数据传输。4:如果端口p-T确实在监听,传输就会成功(返回码150和226被发送回给S)。否则S回收到"425无法打开数据连接"的应答。5:S持续使用PORT和LIST命令,直到T上所有的选择端口扫描完毕。FTP代理扫描不但难以跟踪,而且当ftp服务器在_blank">防火墙后面的时候五:其它扫描方法Ping扫描如果需要扫描一个主机上甚至整个子网上的成千上万个端口,首先判断一个主机是否开机就非常重要了。这就是Ping扫描器的目的。主要由两种方法用来实现Ping扫描。1:真实扫描:例如发送ICMP请求包给目标IP地址,有相应的表示主机开机。2:TCP Ping:例如发送特殊的TCP包给通常都打开且没有过滤的端口(例如80端口)。对于没有root权限的扫描者,使用标准的connect来实现。否则,ACK数据包发送给每一个需要探测的主机IP。每一个返回的RST表明相应主机开机了。另外,一种类似于SYN扫描端口80(或者类似的)也被经常使用。安全扫描器安全扫描器是用来自动检查一个本地或者远程主机的安全漏洞的程序。象其它端口扫描器一样,它们查询端口并记录返回结果。但是它们。它们主要要解决以下问题:1:是否允许匿名登录。2:是否某种网络服务需要认证。3:是否存在已知安全漏洞。可能SATAN是最著名的安全扫描器。1995年四月SATAN最初发布的时候,人们都认为这就是它的最终版本,认为它不但能够发现相当多的已知漏洞,而且能够针对任何很难发现的漏洞提供信息。但是,从它发布以来,安全扫描器一直在不断地发展,其实现机制也越来越复杂。栈指纹绝大部分安全漏洞与缺陷都与操作系统相关,因此远程操作系统探测是系统管理员关心的一个问题。远程操作系统探测不是一个新问题。近年来,TCP/IP实现提供了主机操作系统信息服务。FTP,TELNET,HTTP和DNS服务器就是很好的例子。然而,实际上提供的信息都是不完整的,甚至有可能是错误的。最初的扫描器,依靠检测不同操作系统对TCP/IP的不同实现来识别操作系统。由于差别的有限性,现在只能最多只能识别出10余种操作系统。最近出现的两个扫描器,QueSO和NMAP,在指纹扫描中引入了新的技术。 QueSO第一个实现了使用分离的数据库于指纹。NMAP包含了很多的操作系统探测技术,定义了一个模板数据结构来描述指纹。由于新的指纹可以很容易地以模板的形式加入,NMAP指纹数据库是不断增长的,它能识别的操作系统也越来越多。这种使用扫描器判断远程操作系统的技术称为(TCP/IP)栈指纹技术。另外有一种技术称为活动探测。活动探测把TCP的实现看作一个黑盒子。通过研究TCP对探测的回应,就可以发现 TCP实现的特点。TCP/IP 栈指纹技术是活动探测的一个变种,它适用于整个TCP/IP协议的实现和操作系统。栈指纹使用好几种技术来探测TCP/IP协议栈和操作系统的细微区别。这些信息用来创建一个指纹,然后跟已知的指纹进行比较,就可以判断出当前被扫描的操作系统。栈指纹扫描包含了相当多的技术。下面是一个不太完整的清单:1:FIN探测2:BOGUS标记探测3:TCP ISN 取样4:TCP 初始窗口5:ACK值6:ICMP错误信息7:ICMP信息8:服务类型 9:TCP选项
      TCP协议设计时,已经考虑了"发送SYN后,如果断开链接"之后怎么办。读一下TCP的RFC文档就知道了。
      TCP协议的三次握手漏洞问题!

      os设计中的3h原则指的是什么?

      os设计中的3h原则指的是在响应申请时的三次握手原则,h是英文hand的意思。
      os设计中的3h原则指的是什么?

      tcp发送数据过程

      最简单形象地说,TCP协议依靠三次握手原则。即:客户端向服务器发出请求、服务器端同意客户端的请求、客户端向服务器端传输数据。
      tcp发送数据过程

      TCP三次握手与四次挥手

      传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。 TCP旨在适应支持多网络应用的分层协议层次结构。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。传输控制协议(TCP,Transmission Control Protocol)是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。互联网络与单个网络有很大的不同,因为互联网络的不同部分可能有截然不同的拓扑结构、带宽、延迟、数据包大小和其他参数。TCP的设计目标是能够动态地适应互联网络的这些特性,而且具备面对各种故障时的健壮性。三次握手过程理解第一次握手:建立连接时,客户端发送syn包(syn=x)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。第二次握手:服务器收到syn包,必须确认客户的SYN(ack=x+1),同时自己也发送一个SYN包(syn=y),即SYN+ACK包,此时服务器进入SYN_RECV状态;第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=y+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。举个例子一对情侣准备周天去看电影。第一次握手 男孩发送:周天去看电影吧。第二次握手 女孩回应:好的。第三次握手 男孩回应:那说好了。1、为什么不能用两次握手进行连接?3次握手完成两个重要的功能,既要双方做好发送数据的准备工作(双方都知道彼此已准备好),也要允许双方就初始序列号进行协商,这个序列号在握手过程中被发送和确认。两次握手出现意外时,将会出现资源的浪费。握手分为Server s,Client c。两次握手,当C想要建立连接时发送一个SYN,然后等待ACK,结果这个SYN因为网络问题没有及时到达S,所以C在一段时间内没收到ACK后,再发送一个SYN,这次S顺利收到,接着C也收到ACK,这时C发送的第一个SYN终于到了S,对于S来说这是一个新连接请求,然后S又为这个连接申请资源,返回ACK,然而这个SYN是个无效的请求,C收到这个SYN的ACK后也并不会理会它,而S却不知道,S会一直为这个连接维持着资源,造成资源的浪费。三次握手出现错误时的应对措施第一次握手A发送SYN传输失败,A,B都不会申请资源,连接失败。如果一段时间内发出多个SYN连接请求,那么A只会接受它最后发送的那个SYN的SYN+ACK回应,忽略其他回应全部回应,B中多申请的资源也会释放第二次握手B发送SYN+ACK传输失败,A不会申请资源,B申请了资源,但收不到A的ACK,过一段时间释放资源。如果是收到了多个A的SYN请求,B都会回复SYN+ACK,但A只会承认其中它最早发送的那个SYN的回应,并回复最后一次握手的ACK第三次握手ACK传输失败,B没有收到ACK,释放资源,对于后序的A的传输数据返回RST。实际上B会因为没有收到A的ACK会多次发送SYN+ACK,次数是可以设置的,如果最后还是没有收到A的ACK,则释放资源,对A的数据传输返回RST。TCP的四次挥手(1)首先客户端想要释放连接,向服务器端发送一段TCP报文,其中:标记位为FIN,表示“请求释放连接“;序号为Seq=U;随后客户端进入FIN-WAIT-1阶段,即半关闭阶段。并且停止在客户端到服务器端方向上发送数据,但是客户端仍然能接收从服务器端传输过来的数据。注意:这里不发送的是正常连接时传输的数据(非确认报文),而不是一切数据,所以客户端仍然能发送ACK确认报文。(2)服务器端接收到从客户端发出的TCP报文之后,确认了客户端想要释放连接,随后服务器端结束ESTABLISHED阶段,进入CLOSE-WAIT阶段(半关闭状态)并返回一段TCP报文。前"两次挥手"既让服务器端知道了客户端想要释放连接,也让客户端知道了服务器端了解了自己想要释放连接的请求。于是,可以确认关闭客户端到服务器端方向上的连接了(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服务器端收到从客户端发出的TCP报文之后结束LAST-ACK阶段,进入CLOSED阶段。由此正式确认关闭服务器端到客户端方向上的连接。客户端等待完2MSL之后,结束TIME-WAIT阶段,进入CLOSED阶段,由此完成“四次挥手”。后“两次挥手”既让客户端知道了服务器端准备好释放连接了,也让服务器端知道了客户端了解了自己准备好释放连接了。于是,可以确认关闭服务器端到客户端方向上的连接了,由此完成“四次挥手”。与“三次挥手”一样,在客户端与服务器端传输的TCP报文中,双方的确认号Ack和序号Seq的值,都是在彼此Ack和Seq值的基础上进行计算的,这样做保证了TCP报文传输的连贯性,一旦出现某一方发出的TCP报文丢失,便无法继续"挥手",以此确保了"四次挥手"的顺利完成。为何要四次分手呢?我们在此之前先说说TCP异常断开的情况TCP异常断开1、如果已经建立了连接,但是一方突然出现故障了怎么办?TCP还设有一个保活计时器,显然,客户端如果出现故障,服务器不能一直等下去,白白浪费资源。服务器每收到一次客户端的请求后都会重新复位这个计时器,时间通常是设置为2小时,若两小时还没有收到客户端的任何数据,服务器就会发送一个探测报文段,以后每隔75秒钟发送一次。若一连发送10个探测报文仍然没反应,服务器就认为客户端出了故障,接着就关闭连接。心跳检测机制在TCP网络通信中,经常会出现客户端和服务器之间的非正常断开,需要实时检测查询链接状态。常用的解决方法就是在程序中加入心跳机制。此外,还有Heart-Beat线程、设置TCP属性等机制。通俗理解断电、死机、这意味着所有状态信息的失,如同-个失忆的人,对外界的一-切是陌生的,即使重新启动、程序征常运行也是如此。另一方肯定还是有正常记忆的,但双方状态(记忆)不对称已经无法完成正常意义的沟通,所以最好的方法,就是让好的一方检测到记忆的不对称,然后把自己的记忆也释放( reset) ,双方再重新谈-场恋爰(TCP重连)。好的一方如何检测呢?TCP Keepalive默认情况下, TCP 120分钟会发送检测信号,如果对方没有回复, 会重试几次到放弃,然后宣布对方翘辫子,发送Reset释放连接。对方收到会莫名其妙,会默默地忽视,因为压根没有这个连接(掉电释放掉了)。2个小时是一个漫长的等待 ,滞留的TCP会话会-直站用资源, 这是一种浪费!Application Keepalive为了更快地检测对方已经Dead的事实,应用程序层面可以发送检测信号,比如5 -10分钟检测一次。通过以上两种常用方法,可以克服好的一方永久驻留在内存里的现状,释放是唯一正确的方法 !实, Application Keepalive除了检测对方是否在线,大的作用是为了避免存在于通信双方之间的NAT设备表超时删除,需要周期性地刷新保活。所以四次挥手也是为了能实时的断开连接,释放资源这也是为了应对意外情况比如客户端在发送一次断开报文后直接自行断开了连接。而这个连接服务器端却没有收到。此时服务器并不知道客户端已经断开了连接。在此期间会一直发送请求判断客户端是否连接。直到最后还没有回应,才会断开连接。TCP协议是一种面向连接的、可靠的、基于字节流的运输层通信协议。TCP是全双工模式,这就意味着,当主机1发出FIN报文段时,只是表示主机1已经没有数据要发送了,主机1告诉主机2,它的数据已经全部发送完毕了;但是,这个时候主机1还是可以接受来自主机2的数据;当主机2返回ACK报文段时,表示它已经知道主机1没有数据发送了,但是主机2还是可以发送数据到主机1的;当主机2也发送了FIN报文段时,这个时候就表示主机2也没有数据要发送了,就会告诉主机1,我也没有数据要发送了,之后彼此就会愉快的中断这次TCP连接。如果要正确的理解四次分手的原理,就需要了解四次分手过程中的状态变化。举个例子本来一对情侣约好周天去看电影如果是一次挥手即一方发送断开请求之后立即关闭连接。女孩不想去了,就发送:周天不去了,手机就关掉了(关闭连接),如果这个消息没有发送成功。男孩认为约会还是算数的。就一直等待,等待超时的时候询问:还在不在?此时女孩已经关机了,所以接受不到这个信息。男孩可能会等待两个小时之后才选择回去。如果是两次挥手。女孩不想去了,就发送:周天不去了。然后手机没有关机,想确认男孩有没有收到。因为是两次挥手。男孩接到信息后回应:好的。 就选择关机(断开连接,这里先看成男孩已经没有其他数据要发送,因为是两次挥手)。但是回应没有发送到。此时女孩就会一直等,并反复发送消息。但此时男孩已经关机了。女孩可能会反复发送很长时间才选择断开连接。或者男孩回复好的之后,女孩也接受到了,但男孩还有话没说完,想继续聊一聊之前的那个话题,这个话题还很重要。但是因为对面关闭连接也接收不到了。(这就可能出现传输过程中数据的不完整,不满足数据可靠)所以要等双方数据都传输完毕的四次挥手。 可以实时的关闭掉连接。
      TCP三次握手与四次挥手

      计算机网络体系分为哪四层

      1.、应用层应用层对应于OSI参考模型的高层,为用户提供所需要的各种服务,例如:FTP、Telnet、DNS、SMTP等.2.、传输层传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。该层定义了两个主要的协议:传输控制协议(TCP)和用户数据报协议(UDP).TCP协议提供的是一种可靠的、通过“三次握手”来连接的数据传输服务;而UDP协议提供的则是不保证可靠的(并不是不可靠)、无连接的数据传输服务.3.、网际互联层网际互联层对应于OSI参考模型的网络层,主要解决主机到主机的通信问题。它所包含的协议设计数据包在整个网络上的逻辑传输。注重重新赋予主机一个IP地址来完成对主机的寻址,它还负责数据包在多种网络中的路由。该层有三个主要协议:网际协议(IP)、互联网组管理协议(IGMP)和互联网控制报文协议(ICMP)。IP协议是网际互联层最重要的协议,它提供的是一个可靠、无连接的数据报传递服务。4.、网络接入层(即主机-网络层)网络接入层与OSI参考模型中的物理层和数据链路层相对应。它负责监视数据在主机和网络之间的交换。事实上,TCP/IP本身并未定义该层的协议,而由参与互连的各网络使用自己的物理层和数据链路层协议,然后与TCP/IP的网络接入层进行连接。地址解析协议(ARP)工作在此层,即OSI参考模型的数据链路层。扩展资料:OSI将计算机网络体系结构(architecture)划分为以下七层:物理层: 将数据转换为可通过物理介质传送的电子信号 相当于邮局中的搬运工人。数据链路层: 决定访问网络介质的方式。在此层将数据分帧,并处理流控制。本层指定拓扑结构并提供硬件寻址,相当于邮局中的装拆箱工人。网络层: 使用权数据路由经过大型网络 相当于邮局中的排序工人。传输层: 提供终端到终端的可靠连接 相当于公司中跑邮局的送信职员。会话层: 允许用户使用简单易记的名称建立连接 相当于公司中收寄信、写信封与拆信封的秘书。表示层: 协商数据交换格式 相当公司中简报老板、替老板写信的助理。应用层: 用户的应用程序和网络之间的接口老板。参考资料来源:百度百科-TCP/IP参考模型参考资料来源:百度百科-OSI模型
      计算机网络由多个互连的结点组成,结点之间要不断地交换数据和控制信息,要做到有条不紊地交换数据,每个结点就必须遵守一整套合理而严谨的结构化管理体系.计算机网络就是按照高度结构化设计方法采用功能分层原理来实现的,即计算机网络体系结构的内容. 网络体系结构及协议的概念网络体系和网络体系结构网络体系(Network Architecture):是为了完成计算机间的通信合作,把每台计算机互连的功能划分成有明确定义的层次,并规定了同层次进程通信的协议及相邻之间的接口及服务.网络体系结构:是指用分层研究方法定义的网络各层的功能,各层协议和接口的集合.计算机网络体系结构计算机的网络结构可以从网络体系结构,网络组织和网络配置三个方面来描述,网络组织是从网络的物理结构和网络的实现两方面来描述计算机网络;网络配置是从网络应用方面来描述计算机网络的布局,硬件,软件和和通信线路来描述计算机网络;网络体系结构是从功能让来描述计算机网络结构.网络体系结构最早是由IBM公司在1974年提出的,名为SNA计算机网络体系结构:是指计算机网络层次结构模型和各层协议的集合结构化是指将一个复杂的系统设计问题分解成一个个容易处理的子问题,然后加以解决.层次结构是指将一个复杂的系统设计问题分成层次分明的一组组容易处理的子问题,各层执行自己所承担的任务.计算机网络结构采用结构化层次模型,有如下优点:各层之间相互独立,即不需要知道低层的结构,只要知道是通过层间接口所提供的服务灵活性好,是指只要接口不变就不会因层的变化(甚至是取消该层)而变化各层采用最合适的技术实现而不影响其他层有利于促进标准化,是因为每层的功能和提供的服务都已经有了精确的说明网络协议协议(Protocol)网络中计算机的硬件和软件存在各种差异,为了保证相互通信及双方能够正确地接收信息,必须事先形成一种约定,即网络协议.协议:是为实现网络中的数据交换而建立的规则标准或约定.网络协议三要素:语法,语义,交换规则(或称时序/定时关系)注:通信协议的特点是:层次性,可靠性和有效性.实体(Entity)实体:是通信时能发送和接收信息的任何软硬件设施接口(Interface)接口:是指网络分层结构中各相邻层之间的通信开放系统互连参考模型(OSI/RM)OSI/RM参考模型基本概述为了实现不同厂家生产的计算机系统之间以及不同网络之间的数据通信,就必须遵循相同的网络体系结构模型,否则异种计算机就无法连接成网络,这种共同遵循的网络体系结构模型就是国际标准——开放系统互连参考模型,即OSI/RM.ISO 发布的最著名的ISO标准是ISO/IEC 7498,又称为X.200建议,将OSI/RM依据网络的整个功能划分成7个层次,以实现开放系统环境中的互连性(interconnection), 互操作性(interoperation)和应用的可移植性(portability).分层原则ISO将整个通信功能划分为7个层次,分层原则如下:网络中各结点都有相同的层次不同结点的同等层具有相同的功能同一结点内相邻层之间通过接口通信每一层使用下层提供的服务,并向其上层提供服务不同结点的同等层按照协议实现对等层之间的通信第七层应用层第六层表示层第五层会话层第四层传输层第三层网络层第二层数据链路层第一层物理层OSI/RM参考模型OSI/RM的配置管理主要目标就是网络适应系统的要求.低三层可看作是传输控制层,负责有关通信子网的工作,解决网络中的通信问题;高三层为应用控制层,负责有关资源子网的工作,解决应用进程的通信问题;传输层为通信子网和资源子网的接口,起到连接传输和应用的作用.ISO/RM的最高层为应用层,面向用户提供应用的服务;最低层为物理层,连接通信媒体实现数据传输.层与层之间的联系是通过各层之间的接口来进行的,上层通过接口向下层提供服务请求,而下层通过接口向上层提供服务.两个计算机通过网络进行通信时,除了物理层之外(说明了只有物理层才有直接连接),其余各对等层之间均不存在直接的通信关系,而是通过各对等层的协议来进行通信,如两个对等的网络层使用网络层协议通信.只有两个物理层之间才通过媒体进行真正的数据通信.当通信实体通过一个通信子网进行通信时,必然会经过一些中间节点,通信子网中的节点只涉及到低三层的结构.OSI/RM中系统间的通信信息流动过程在OSI/RM中系统间的通信信息流动过程如下:发送端的各层从上到下逐步加上各层的控制信息构成的比特流传递到物理信道,然后再传输到接收端的物理层,经过从下到上逐层去掉相应层的控制住信息得到的数据流最终传送到应用层的进程.由于通信信道的双向性,因此数据的流向也是双向的.比特流的构成:数据DATA应用层(DATA+报文头AH,用L7表示)表示层(L7+控制信息PH)会话层(L6+控制信息SH)传输层(L5+控制信息TH)网络层(L4+控制信息NH)数据链路层(差错检测控制信息DT+L3+控制信息DH)物理层(比特流)OSI/RM各层概述物理层(Physical Layer)直接与物理信道直接相连,起到数据链路层和传输媒体之间的逻辑接口作用.功能:提供建立,维护和释放物理连接的方法,实现在物理信道上进行比特流的传输.传送的基本单位:比特(bit)物理层的内容:1)通信接口与传输媒体的物理特性物理层协议主要规定了计算机或终端DTE与通信设备DCE之间的接口标准,包括接口的机械特性,电气特性,功能特性,规程特性2)物理层的数据交换单元为二进制比特:对数据链路层的数据进行调制或编码,成为传输信号(模拟,数字或光信号)3)比特的同步:时钟的同步,如异步/同步传输4)线路的连接:点—点(专用链路),多点(共享一条链路)5)物理拓扑结构:星型,环型,网状6)传输方式:单工,半双工,全双工典型的物理层协议有RS-232系列,RS449,V.24,V.28,X.20,X.21数据链路层(Data Link Layer)通过物理层提供的比特流服务,在相邻节点之间建立链路,对传输中可能出现的差错进行检错和纠错,向网络层提供无差错的透明传输.主要负责数据链路的建立,维持和拆除,并在两个相邻机电队线路上,将网络层送下来的信息(包)组成帧传送,每一帧包括一定数量的数据和一些必要的控制信息.为了保证数据帧的可靠传输应具有差错控制功能.功能:是在不太可靠的物理链路上实现可靠的数据传输传送的基本单位:帧(Frame)数据链路层内容:1)成帧:是因要将网络层的数据分为管理和控制的数据单元2)物理地址寻址:标识发送和接收数据帧的节点位置,因此常在数据头部加上控制信息DH(源,目的节点的地址),尾部加上差错控制信息DT3)流量控制:即对发送数据帧的速率进行控制,保证传输正确.4)差错控制:在数据帧的尾部所加上的尾部控制信息DT5)接入控制:当多个节点共享通信链路时,确定在某一时间内由哪个节点发送数据常见的数据链路层协议有两类:一是面向字符型传输控制规程BSC;一是面向比特的传输控制规程HDLC流量控制技术(1)停-等流量控制:发送节点在发送一帧数据后必须等待对方回送确认应答信息到来后再发下一帧.接收节点检查帧的校验序列,无错则发确认帧,否则发送否认帧,要求重发.存在问题:双方无休止等待(数据帧或确认帧丢失),解决办法发送后使用超时定时器;重帧现象(收到同样的两帧),解决办法是对帧进行编号适用:半双工通信(2)滑动窗口流量控制:是指对于任意时刻,都允许发送端/接收端一次发送/接收多个帧,帧的序号个数称为发送/接收窗口大小适用:全双工工作原理:以帧控制段长为8位,则发送帧序号用3bit表示,发送窗口大小为WT=5,接收窗口大小为WR=2为例来说明发送窗口0123412345重发13456756701接收窗口01(0对1错)12(1等2对)12(正确)34(正确)……滑动窗口的大小与协议的关系:WT >1,WR=1,协议为退回N步的ARQ(自动反馈请求)WT >1,WR>1,协议为选择重传的ARQWT =1,WR=1,协议为停-等式的ARQ网络层(Network Layer)又称为通信子网层,是计算机网络中的通信子网的最高层(由于通信子网不存在路由选择问题),在数据链路层提供服务的基础上向资源子网提供服务.网络层将从高层传送下来的数据打包,再进行必要的路由选择,差错控制,流量控制及顺序检测等处理,使发送站传输层所传下来的数据能够正确无误地按照地址传送到目的站,并交付给目的站传输层.功能:实现分别位于不同网络的源节点与目的节点之间的数据包传输(数据链路层只是负责同一个网络中的相邻两节点之间链路管理及帧的传输),即完成对通信子网正常运行的控制.关键技术:路由选择传送信息的基本单位:包(Packer)网络层采用的协议是X.25分组级协议网络层的服务:面向连接服务:指数据传输过程为连接的建立,数传的维持与拆除连接三个阶段.如电路交换面向无连接服务:指传输数据前后没有连接的建立,拆除,分组依据目的地址选择路由.如存储转发网络层的内容:逻辑地址寻址:是指从一个网络传输到另一个网络的源节点和目的节点的逻辑地址NH(数据链路层中的物理地址是指在同一网络中)路由功能:路由选择是指根据一定的原则和算法在传输通路中选出一条通向目的节点的最佳路由.有非适应型(有随机式,扩散式,固定式路选法)和自适应型(有孤立的,分布的,集中的路选法)两种选择算法流量控制:拥塞控制:是指在通信子网中由于出现过量的数据包而引起网络性能下降的现象.传输层(Transport Layer)是计算机网络中的资源子网和通信子网的接口和桥梁,完成资源子网中两节点间的直接逻辑通信.传输层下面的三层属于通信子网,完成有关的通信处理,向传输层提供网络服务;传输层上面的三层完成面向数据处理的功能,为用户提供与网络之间的接口.由此可见,传输层在OSI/RM中起到承上启下的作用,是整个网络体系结构的关键.功能:实现通信子网端到端的可靠传输(保证通信的质量)信息传送的基本单位:报文传输层采用的协议是ISO8072/3会话层(Session Layer)又称为会晤层,是利用传输层提供的端到端的服务向表示层或会话层用户提供会话服务.功能:提供一个面向用户的连接服务,并为会话活动提供有效的组织和同步所必须的手段,为数据传送提供控制和管理.信息传送的基本单位:报文会话层采用的协议是ISO8326/7表示层(Presentation Layer)表示层处理的是OSI系统之间用户信息的表示问题,通过抽象的方法来定义一种数据类型或数据结构,并通过使用这种抽象的数据结构在各端系统之间实现数据类型和编码的转换.功能:数据编码,数据压缩,数据加密等工作信息传送的基本单位:报文表示层采用的协议是ISO8822/3/4/5应用层(Application Layer)应用层是计算机网络与最终用户间的接口,是利用网络资源唯一向应用程序直接提供服务的层.功能:包括系统管理员管理网络服务所涉及的所有问题和基本功能.信息传送的基本单位:用户数据报文应用层采用的协议有:用于文件传送,存取和管理FTAM的ISO8571/1~4;用于虚终端VP的ISO9040/1;用于作业传送与操作协议JTM的ISO8831/2;用于公共应用服务元素CASE的ISO8649/50Internet的体系结构 Internet是由无数不同类型的服务器,用户终端以及路由器,网关,通信线路等连接组成,不同网络之间,不同类型设备之间要完成信息的交换,资源的共享需要有功能强大的网络软件的支持,TCP/IP就是能够完成互联网这些功能的协议集.
      第一层:物理层(PhysicalLayer),规定通信设备的机械的、电气的、功能的和过程的特性,用以建立、维护和拆除物理链路连接。 第二层:数据链路层(DataLinkLayer):在物理层提供比特流服务的基础上,建立相邻结点之间的数据链路,通过差错控制提供数据帧(Frame)在信道上无差错的传输,并进行各电路上的动作系列。第三层是网络层(Network layer) 在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,也可能还要经过很多通信子网。 第四层是处理信息的传输层(Transport layer)。第4层的数据单元也称作数据包(packets)。但是,当你谈论TCP等具体的协议时又有特殊的叫法,TCP的数据单元称为段(segments)而UDP协议的数据单元称为“数据报(datagrams)”。

      计算机网络体系分为哪四层

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/62110.html

          热门文章

          文章分类