tcp ip常用协议(tcp/ip协议包含哪几层)

      最后更新:2024-03-16 14:39:13 手机定位技术交流文章

      TCP/IP协议是什么?

      TCP/IP协议(又名:网络通讯协议)即传输控制协议/互联网协议,是一个网络通信模型,以及一整个网络传输协议家族。这一模型是Internet最基本的协议,也是Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。 其定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。TCP负责发现传输的问题,而IP是给因特网的每一台联网设备规定一个地址。 为了减少网络设计的复杂性,大多数网络都采用分层结构。对于不同的网络,层的数量、名字、内容和功能都不尽相同。在相同的网络中,一台机器上的第N层与另一台机器上的第N层可利用第N层协议进行通信,协议基本上是双方关于如何进行通信所达成的一致。不同机器中包含的对应层的实体叫做对等进程。在对等进程利用协议进行通信时,实际上并不是直接将数据从一台机器的第N层传送到另一台机器的第N层,而是每一层都把数据连同该层的控制信息打包交给它的下一层,它的下一层把这些内容看做数据,再加上它这一层的控制信息一起交给更下一层,依此类推,直到最下层。最下层是物理介质,它进行实际的通信。相邻层之间有接口,接口定义下层向上层提供的原语操作和服务。相邻层之间要交换信息,对等接口必须有一致同意的规则。层和协议的集合被称为网络体系结构。每一层中的活动元素通常称为实体,实体既可以是软件实体,也可以是硬件实体。第N层实体实现的服务被第N+1层所使用。在这种情况下,第N层称为服务提供者,第N+1层称为服务用户。服务是在服务接入点提供给上层使用的。服务可分为面向连接的服务和面向无连接的服务,它在形式上是由一组原语来描述的。这些原语可供访问该服务的用户及其他实体使用。TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP是面向连接的所以只能用于端到端的通讯。TCP提供的是一种可靠的数据流服务,采用“带重传的肯定确认”技术来实现传输的可靠性。TCP还采用一种称为“滑动窗口”的方式进行流量控制,所谓窗口实际表示接收能力,用以限制发送方的发送速度。如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向‘上’传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。应用程序轮流将信息送回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物理介质,最后到接收方。 面向连接的服务(例如 Telnet、 FTP、 rlogin、 X Windows和 SMTP)需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP(发送和接收 域名数据库),但使用UDP传送有关单个主机的信息。
      TCP/IP协议是什么?

      TCP/IP协议包含哪些常用协议

      TCP/IP协议(Transfer ControlnProtocol/Internet Protocol)叫做传输控制/网际协议,又叫网络通讯协议,这个协议是Internet国际互联网络的基础。 TCP/IP是网络中使用的基本的通信协议。虽然从名字上看TCP/IP包括两个协议,传输控制协议(TCP)和网际协议(IP),但TCP/IP实际上是一组协议,它包括上百个各种功能的协议,如:远程登录、文件传输和电子邮件等,而TCP协议和IP协议是保证数据完整传输的两个基本的重要协议。通常说TCP/IP是Internet协议族,而不单单是TCP和IP。TCP/IP是用于计算机通信的一组协议,我们通常称它为TCP/IP协议族。它是70年代中期美国国防部为ARPANET广域网开发的网络体系结构和协议标准,以它为基础组建的INTERNET是目前国际上规模最大的计算机网络,正因为INTERNET的广泛使用,使得TCP/IP成了事实上的标准。之所以说TCP/IP是一个协议族,是因为TCP/IP协议包括TCP、IP、UDP、ICMP、RIP、TELNETFTP、SMTP、ARP、TFTP等许多协议,这些协议一起称为TCP/IP协议。包括:TCP(Transport Control Protocol)传输控制协议IP(Internetworking Protocol)网间网协议UDP(User Datagram Protocol)用户数据报协议ICMP(Internet Control Message Protocol)互联网控制信息协议SMTP(Simple Mail Transfer Protocol)简单邮件传输协议SNMP(Simple Network manage Protocol)简单网络管理协议FTP(File Transfer Protocol)文件传输协议ARP(Address Resolation Protocol)地址解析协议从协议分层模型方面来讲,TCP/IP由四个层次组成:网络接口层、网间网层、传输层、应用层TCP/IP协议族中的几个比较重要的协议。ARP,地址解析协议。要在网络上通信,发送方必须要知道接收方的物理地址,地址解析就是将主机IP地址映射为物理地址的过程。ARP用于获得在同一物理网络中的主机的物理地址。在解析本地IP地址时,发送方先在ARP缓存中查找接收方的物理地址,如果找不到映射的话,就建立一个请求,将自己的IP地址和物理地址包含在请求中,再将请求广播出去,让所有本地主机均能接收并处理。当某台主机断定请求中的IP地址与自己的相同时,直接发送一个ARP答复,将自己的物理地址传给发送方。图三是ARP请求和应答报文格式。ARP协议有一个问题:假如一个设备不知道自己的IP地址,就没有办法产生ARP请求和ARP应答。网络上的无盘工作站就是这种情况,它们只知道自己的物理地址。有一个办法,就是使用RARP(反向地址解析协议),它的工作方式与ARP正好相反。RARP广播出想要反向解析的物理地址,在网络中只有RARP服务器能够接收这种请求,并返回包含反向解析出的IP地址的应答。IP,因特网协议。它给数据包加上源地址和目的地址,组成IP数据包,然后单独发送出去。IP协议具有分组交换的功能,能把数据包通过不同的路径传送到接收方,提高通信线路的利用率。由于每个IP数据包的处理都是独立的,它们各自选择自己的路由传输,因此可能后发送的包先到达。接收方也可不按发送顺序接收包。在交换数据前它并不建立会话,另一方面,数据在被收到时,IP不需要收到确认,所以它是不可靠的,它不保证IP数据包能正确到达目的地。IP有一个简单的错误处理算法:丢弃该数据包,然后发送ICMP消息给发送端。任何要求的可靠性必须由它的上层来提供(如TCP)。图四是IP数据包首部结构。TCP,传输控制协议。是一种面向连接的传输层协议。它负责把要传送的数据分成若干个数据包,并给每个数据包加上包头,包上有相应的编号,这样可以在数据接收端将数据还原为原来的格式。在传送过程中可能出现数据包丢失或损坏的情况,如果接收方在规定时间内不能收到这些数据包,TCP协议会让发送方重新发送丢失的数据包,直到数据包正确到达接收方或出现网络超时。如果发送方传送数据的速度大大快于接收方接收数据的速度,TCP协议可以采用数据流控制机制减慢数据的传送速度,协调发送和接收方的数据响应。图五是TCP数据报首部结构。 UDP,用户数据报协议。UDP是一种非常简单的无连接的协议。它提供的是不可靠的数据传输服务。UDP的简单性使它不适合于一些应用,但对另一些更加复杂的、自身提供面向连接功能的应用却很适合。其它可能使用UDP的情况包括:转发路由表数据交换、系统信息、网络监控数据等的交换。这些类型的交换不需要流量控制、应答、重排序或任何TCP提供的服务。
      很多,如网络层的IP协议,ICMP协议,传输层的TCP协议和UDP协议,还有数据链路层的协议。
      TCP/IP协议包含哪些常用协议

      TCP/IP参考模型中,应用层协议常用的有_?______。

      TCP/IP参考模型中,应用层协议常用的有:Telnet、FTP、SMTP 、HTTP。1、Telnet协议允许一台机器上的用户,登录到远程机器上,并进行工作;2、FTP协议提供了将文件从一台机器上移到另一台机器上的方法;3、SMTP协议用于电子邮件的收发;4、HTTP协议用于在WWW上获取主页。(注意:DNS协议同时使用了TCP53端口和UDP53端口。DNS协议在UDP53端口上提供域名解析服务,在TCP53端口上提供DNS区域文件传输服务。)扩展资料:1、Telnet协议(TELecommunications NETwork,远程登录协议)Telnet协议是TCP/IP协议家族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成登录远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。用于实现远程登录功能。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码来登录服务器。2、FTP协议(File Transfer Protocol,文件传输协议)基于客户服务器模式,FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端,FTP协议提供了交互式的访问,面向连接,使用TCP/IP更加可靠地进行运输服务。主要功能:减少/消除不同操作系统下文件的不兼容性问题。在FTP交互的过程中,客户端通过命令字来告诉服务器相关的信息。常用的有访问控制命令USER,PASS、CWD、QUIT 等;传输参数命令PORT、PASV、TYPE、STRU、MODE五种;FTP服务命令RETR、STOR、LIST、ABOR 等二十种。3、SMTP 协议(Simple Mail Transfer Protocol,简单邮件传送协议)基本功能:写信、传送报告、报告传送情况、显示信件、接收方处理信件 。SMTP是一种提供可靠且有效电子邮件传输的协议。SMTP是建模在FTP文件传输服务上的一种邮件服务,SMTP服务器在默认端口25上监听客户请求,主要用于传输系统之间的邮件信息。是一种面向连接的Client/Server模式。4、DNS协议 (Domain Name Service ,域名服务协议)由数字组成的 IP 地址很难记忆,所以我们上网使用网站 IP 地址的别名——域名。实际使用中,域名与 IP 地址是对应的,这种对应关系保存在DNS 服务器之中。在浏览器中输入一个域名后,会有 DNS 服务器将域名解析为对应的 IP 地址。注意这和网络层的 ARP 协议的不同之处:DNS 提供的是域名与 IP 地址的对应关系,而 ARP 提供的是 IP 地址和 MAC 地址的对应关系。5、HTTP协议(Hyper Text Transfer Protocol,超文本传输协议)它是基于 TCP的可靠传输,采用的是客户端/服务器的工作模式。浏览器向服务器发送请求,而服务器回应相应的网页,用于从万维网(WWW:即World Wide Web)服务器传输超文本到本地浏览器的传送协议。在 HTTP 通信过程中,首先由客户端向服务器发起建立链接的请求,通过 TCP三次握手来完成,然后客户端向服务器发出请求,告诉服务器想得到的信息。服务器通过响应返回客户端需要的信息。最后通过 TCP 四次握手关闭链接,从而完成一次基本的通信过程。参考资料:TCP/IP协议——百度百科
      目前,应用层协议主要有以下几种:1、远程登录协议(Telnet)Telnet是Internet远程登录服务的标准协议和主要方式,最初由ARPANET开发,现在主要用于Internet会话,它的基本功能是允许用户登录进入远程主机系统。2、文件传送协议(file transfer protocol,FTP)文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。3、简单邮件传送协议(simple mail ttransfer protocol,SMTP)SMTP是一个相对简单的基于文本的协议。在其之上指定了一条消息的一个或多个接收者(在大多数情况下被确认是存在的),然后消息文本会被传输。4、域名系统(domain name system,DNS)域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用TCP和UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。5、简单网络管理协议(simple network management protocol,SNMP)简单网络管理协议(SNMP) 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。6、超文本传送协议(hyper text transfer protocol,HTTP)超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。
      目前,应用层协议主要有以下几种: ①远程登录协议(Telnet);②文件传送协议(file transfer protocol,FTP);③简单邮件传送协议(simple mail ttransfer protocol,SMTP);④域名系统(domain name system,DNS);⑤简单网络管理协议(simple network management protocol,SNMP); ⑥超文本传送协议(hyper text transfer protocol,HTTP).
      答案是1.2
      TCP/IP参考模型中,应用层协议常用的有_?______。

      TCP/IP协议是什么

      TCP/IP协议是什么TCP和UDP处在同一层---运输层,但是TCP和UDP最不同的地方是,TCP提供了一种可靠的数据传输服务,TCP是面向连接的,也就是说,利用TCP通信的两台主机首先要经历一个“拨打电话”的过程,等到通信准备结束才开始传输数据,最后结束通话。所以TCP要比UDP可靠的多,UDP是把数据直接发出去,而不管对方是不是在收信,就算是UDP无法送达,也不会产生ICMP差错报文,这一经时重申了很多遍了。把TCP保证可靠性的简单工作原理:应用数据被分割成TCP认为最适合发送的数据块。这和UDP完全不同,应用程序产生的 数据报长度将保持不变。由TCP传递给IP的信息单位称为报文段或段当TCP发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能 及时收到一个确认,将重发这个报文段.当TCP收到发自TCP连接另一端的数据,它将发送一个确认。这个确认不是立即发送,通常将推迟几分之一秒.TCP将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传输 过程中的任何变化。如果收到段的检验和有差错, T P将丢弃这个报文段和不确认收到此报文段(希望发端超时并重发)。既然TCP报文段作为IP数据报来传输,而IP数据报的到达可能会失序,因此TCP报文段 的到达也可能会失序。如果必要, TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层。TCP还能提供流量控制。TCP连接的每一方都有固定大小的缓冲空间。TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据。这将防止较快主机致使较慢主机的缓冲区溢出。从这段话中可以看到,TCP中保持可靠性的方式就是超时重发,这是有道理的,虽然TCP也可以用各种各样的ICMP报文来处理这些,但是这也不是可靠的,最可靠的方式就是只要不得到确认,就重新发送数据报,直到得到对方的确认为止。TCP的首部和UDP首部一样,都有发送端口号和接收端口号。但是显然,TCP的首部信息要比UDP的多,可以看到,TCP协议提供了发送和确认所需要的所有必要的信息。可以想象一个TCP数据的发送应该是如下的一个过程。双方建立连接发送方给接受方TCP数据报,然后等待对方的确认TCP数据报,如果没有,就重新发,如果有,就发送下一个数据报。接受方等待发送方的数据报,如果得到数据报并检验无误,就发送ACK(确认)数据报,并等待下一个TCP数据报的到来。直到接收到FIN(发送完成数据报)中止连接可以想见,为了建立一个TCP连接,系统可能会建立一个新的进程(最差也是一个线程),来进行数据的传送--TCP协议TCP是一个面向连接的协议,在发送输送之前 ,双方需要确定连接。而且,发送的数据可以进行TCP层的分片处理。TCP连接的建立过程 ,可以看成是三次握手 。而连接的中断可以看成四次握手 。1.连接的建立在建立连接的时候,客户端首先向服务器申请打开某一个端口(用SYN段等于1的TCP报文),然后服务器端发回一个ACK报文通知客户端请求报文收到,客户端收到确认报文以后再次发出确认报文确认刚才服务器端发出的确认报文(绕口么),至此,连接的建立完成。这就叫做三次握手。如果打算让双方都做好准备的话,一定要发送三次报文,而且只需要三次报文就可以了。可以想见,如果再加上TCP的超时重传机制,那么TCP就完全可以保证一个数据包被送到目的地。2.结束连接TCP有一个特别的概念叫做half-close,这个概念是说,TCP的连接是全双工(可以同时发送和接收)连接,因此在关闭连接的`时候,必须关闭传和送两个方向上的连接。客户机给服务器一个FIN为1的TCP报文,然后服务器返回给客户端一个确认ACK报文,并且发送一个FIN报文,当客户机回复ACK报文后(四次握手),连接就结束了。3.最大报文长度在建立连接的时候,通信的双方要互相确认对方的最大报文长度(MSS),以便通信。一般这个SYN长度是MTU减去固定IP首部和TCP首部长度。对于一个以太网,一般可以达到1460字节。当然如果对于非本地的IP,这个MSS可能就只有536字节,而且,如果中间的传输网络的MSS更加的小的话,这个值还会变得更小。4.客户端应用程序的状态迁移图客户端的状态可以用如下的流程来表示:CLOSED->SYN_SENT->ESTABLISHED->FIN_WAIT_1->FIN_WAIT_2->TIME_WAIT->CLOSED以上流程是在程序正常的情况下应该有的流程,从书中的图中可以看到,在建立连接时,当客户端收到SYN报文的ACK以后,客户端就打开了数据交互地连接。而结束连接则通常是客户端主动结束的,客户端结束应用程序以后,需要经历FIN_WAIT_1,FIN_WAIT_2等状态,这些状态的迁移就是前面提到的结束连接的四次握手。5.服务器的状态迁移图服务器的状态可以用如下的流程来表示:CLOSED->LISTEN->SYN收到->ESTABLISHED->CLOSE_WAIT->LAST_ACK->CLOSED在建立连接的时候,服务器端是在第三次握手之后才进入数据交互状态,而关闭连接则是在关闭连接的第二次握手以后(注意不是第四次)。而关闭以后还要等待客户端给出最后的ACK包才能进入初始的状态。6.TCP服务器设计前面曾经讲述过UDP的服务器设计,可以发现UDP的服务器完全不需要所谓的并发机制,它只要建立一个数据输入队列就可以。但是TCP不同,TCP服务器对于每一个连接都需要建立一个独立的进程(或者是轻量级的,线程),来保证对话的独立性。所以TCP服务器是并发的。而且TCP还需要配备一个呼入连接请求队列(UDP服务器也同样不需要),来为每一个连接请求建立对话进程,这也就是为什么各种TCP服务器都有一个最大连接数的原因。而根据源主机的IP和端口号码,服务器可以很轻松的区别出不同的会话,来进行数据的分发。TCP的交互数据流对于交互性要求比较高的应用,TCP给出两个策略来提高发送效率和减低网络负担:(1)捎带ACK。(2)Nagle算法(一次尽量多的发数据)捎带ACK的发送方式这个策略是说,当主机收到远程主机的TCP数据报之后,通常不马上发送ACK数据报,而是等上一个短暂的时间,如果这段时间里面主机还有发送到远程主机的TCP数据报,那么就把这个ACK数据报“捎带”着发送出去,把本来两个TCP数据报整合成一个发送。一般的,这个时间是200ms。可以明显地看到这个策略可以把TCP数据报的利用率提高很多。Nagle算法上过bbs的人应该都会有感受,就是在网络慢的时候发贴,有时键入一串字符串以后,经过一段时间,客户端“发疯”一样突然回显出很多内容,就好像数据一下子传过来了一样,这就是Nagle算法的作用。Nagle算法是说,当主机A给主机B发送了一个TCP数据报并进入等待主机B的ACK数据报的状态时,TCP的输出缓冲区里面只能有一个TCP数据报,并且,这个数据报不断地收集后来的数据,整合成一个大的数据报,等到B主机的ACK包一到,就把这些数据“一股脑”的发送出去。虽然这样的描述有些不准确,但还算形象和易于理解,我们同样可以体会到这个策略对于低减网络负担的好处。在编写插口程序的时候,可以通过TCP_NODELAY来关闭这个算法。并且,使用这个算法看情况的,比如基于TCP的X窗口协议,如果处理鼠标事件时还是用这个算法,那么“延迟”可就非常大了。 ;
      TCP/IP协议是什么

      TCP/IP协议栈网络层常见协议

      TCP/IP协议栈网络层常见协议汇总大家对网络分层协议栈了解么?我们来回顾一下:物理层——链路层——网络层——传输层——应用层我们之前着重介绍的还是网络层这方面的知识,包括IP协议、IP地址、路由和转发等等,都是网络层的基础知识,这一届我们来介绍一些常用的网络层协议。网络层的协议有很多,在这里我们就挑一些常见,常用的协议来介绍:PING大家对于ping肯定都不陌生,尤其是喜欢玩游戏的同学,ping值过高的话,就会严重影响游戏体验,ping从严格意义上讲不算一种协议,但是在这里也一并将其介绍一下,因为它太有名了。我们先来介绍一下ping的流程:windows用户可以用cmd进入用户终端,输入ping+ip地址,便可以进行一次ping,如下图所示:如果你输入的IP地址有效且可达,则会收到相应对端发来的回复报文,如下图所示:这里的对端是指IP地址所在的服务器,而所谓的ping指,就可以简单理解为从某个数据包发送到服务器开始,到收到服务器应答包为止的时间就是ping。一般以毫秒计算,如果你输入的IP地址有误,或者IP地址不可达,则会受到以下信息:ICMP大家可能对于ICMP协议有些陌生,事实上上面介绍得ping,其回复报文实际上就是ICMP差错报文,ICMP报文一般分为两种类型,一种是ICMP查询报文,它的作用很明显,就是用来在主机或者路由器之间传递控制信息的协议,所谓的传递信息就是指目的地址是否可达,路由是否可达等等状态信息,ICMP协议并不传输数据,但是它却能够很好地传递状态信息,而刚才介绍的ping程序,结合ICMP协议之后的完整过程就是:1、首先查本地arp cache信息,看是否有对方的mac地址和IP地址映射条目记录;2、如果没有,则发起一个arp请求广播报文,等待对方告知具体的mac地址;3、收到arp响应包之后,获得某个IP对应的具体mac地址,有了物理地址之后才可以开始通信,同事对ip-mac地址做一个本地cache;4、发出icmp echo request包,收到icmp echo reply包 。前面3条还是一个查arp表获取对端mac的三层IP转发基本流程,而第4条规则就是用ICMP报文来完成回显信息的输出。既然提到了ping和icmp,那么就顺便介绍一种常见的IP攻击方式“Ping of Death”(死亡之ping) 。Ping of Death可以利用操作系统规定的ICMP数据包最大尺寸不超过64KB这一规定,向主机发起死亡之ping攻击,如果ICMP数据包的尺寸超过64KB上限时,主机就会出现内存分配错误,导致TCP/IP堆栈崩溃,致使主机死机。ARP在大多数的TCP/IP视线中,ARP是一个基础协议,但是它的运行对于应用程序或系统管理员来说一般都是透明的。ARP告诉缓存在它的运行过程中非常关键。我们可以用arp命令对高速缓存进行检查和操作。高速缓存中的每一项内容都有一个定时器,根据它来删除不完整和完整的.表项。arp命令可以显示和修改ARP高速缓存中的内容,我们介绍了ARP的一般操作,同时也介绍了一些特殊的功能,委托ARP和免费ARP.。简单总结起来就是,在IP转发时,仅仅知道对端IP地址是无法完成转发的,我们需要知道对短的MAC地址才能够进行转发,这个时候加入本地的ARP缓存表中查不到对端的MAC,那么则会发送ARP学习报文,去下游学习MAC,只有学到了MAC才能进一步的转发,而ARP在其中就起到了存储IP地址与MAC地址映射关系的作用,因此ARP协议是网络转发中非常重要的一个协议!最后我们来回顾一下,这一节介绍了ping程序,ICMP协议和ARP协议,事实上网络层的协议还有很多很多,但是以上接种协议都是比较常用的协议,大家有兴趣可以深入了解一下。 ;
      TCP/IP协议栈网络层常见协议

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

          热门文章

          文章分类