免费智能真题库 > 历年试卷 > 网络管理员 > 2019年下半年 网络管理员 上午试卷 综合知识
  第24题      
  知识点:   TCP/IP协议   TCP/IP协议的结构   net   TCP   TCP/IP   
  关键词:   TCP/IP   协议栈   TCP   协议        章/节:   计算机网络基础知识       

 
TCP/IP协议中,Telnet协议工作在(24)。
 
 
  A.  网络层
 
  B.  数据链路层
 
  C.  应用层
 
  D.  传输层
 
 
 

 
  第39题    2014年上半年  
   36%
在TCP/IP协议栈中,ARP协议的作用是(39),RARP协议的作用是(40)。
  第27题    2017年上半年  
   44%
以下关于 TCP/IP协议栈中协议和层次对应关系的叙述中,正确的是( )。
  第33题    2011年下半年  
   36%
TCP是互联网中的(32)协议,使用(33)次握手协议建立连接。这种建立连接的方法可以防止(34)。TCP使用的流量控制协议是(35)。..
   知识点讲解    
   · TCP/IP协议    · TCP/IP协议的结构    · net    · TCP    · TCP/IP    · 
 
       TCP/IP协议
               TCP/IP概述
               在诸多网络互联协议中,传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol, TCP/IP)是一个使用非常普遍的网络互联标准协议。TCP/IP协议是美国国防部高级计划研究局(DARPA)为实现ARPANet(后来发展为Internet)互联网而开发的,也是很多大学及研究所多年的研究及商业化的结果。目前,众多的网络产品厂家都支持TCP/IP协议,TCP/IP事实上已成为一个工业标准。
               TCP/IP协议是计算机网络互联中使用最广泛的协议,它规定了计算机之间互相通信的方法。TCP/IP是为了使接入因特网的异种网络、不同网络设备之间能够进行正常的数据通信,而预先制订的一簇大家共同遵守的格式和约定。
               TCP/IP协议簇包括TCP、IP、UDP、ICMP、RIP、Telnet、FTP、SMTP和ARP等许多协议,对因特网中主机寻址方式、主机的命名机制、信息的传输规则以及各种各样的服务功能均做了详细约定。
               TCP/IP协议的结构
               TCP/IP也是一个分层结构,TCP/IP分为4层,由下到上分别是网络接口层、网络层、传输层和应用层。
               1)网络接口层
               网络接口层是TCP/IP软件的最底层,负责接收IP数据报并通过网络将其发送,或者从网络上接收物理帧,抽出IP数据报交给IP层。
               一般情况下,各物理网络可以使用自己的数据链路层协议和物理层协议,不需要在数据链路层上设置专门的TCP/IP协议。但是,当使用串行线路连接主机与网络,或连接网络与网络时(如用户使用电话线和Modem接入因特网或两个相距较远的网络通过数据专线互联时),则需要在数据链路层运行专门的SLIP(Serial Line IP)协议的PPP(Point to Point Protocol)协议。
               SLIP协议提供在串行通信线路上封装IP分组的简单方法,使远程用户能通过电话线和Modem方便地接入TCP/IP网络。
               SLIP是一种简单的组帧方式,使用时还存在一些问题。首先,SLIP不支持在连接过程中的动态IP地址分配,通信双方必须事先告知对方IP地址,这给没有固定IP地址的个人用户上Internet带来了很大的不便;其次,SLIP帧中无协议类型字段,因此它只能支持IP协议;再有,SLIP帧中无校验字段,因此链路层上无法检测出传输差错,必须由上层实体或具有纠错能力的Modem来解决传输差错问题。
               为了解决SLIP协议存在的问题,在串行通信应用中又开发了PPP协议。PPP协议是一种有效的点一点通信协议,它由串行通信线路上的组帧方式,用于建立、配置、测试和拆除数据链路的链路控制协议(LCP)及一组用以支持不同网络层协议的网络控制协议(Network Control Protocol, NCP)3部分组成。
               由于PPP帧中设置了校验字段,因而PPP在链路层上具有差错检验的功能。PPP中的LCP协议提供了通信双方进行参数协商的手段,并且提供了一组NCPs协议,使得PPP可以支持多种网络层协议,如IP、IPX、OSI等。另外,支持IP的NCP提供了在建立连接时动态分配IP地址的功能,从而解决了个人用户上Internet的问题。
               2)网络层
               网络层中含有4个重要协议,即网际协议(IP)、网际控制报文协议(ICMP)、地址解析协议(Address Resolution Protocol, ARP)和反向地址解析协议(RARP)。
               网络层的功能主要由IP协议提供。除了提供端到端的分组分发功能外,IP协议还提供了很多扩充功能。例如,为了克服数据链路层对帧大小的限制,网络层提供了数据分块和重组功能,这使得很大的IP数据报能以较小的分组在网上传输。
               网络层的另一个重要服务是在互相独立的局域网上建立互联网络,即网际网。网间的报文来往根据其目的IP地址通过路由器传到另一网络。
               (1)网际协议(IP)。
               网络层最重要的协议是网际协议(IP),它将多个网络连成一个互联网,可以把高层的数据以多个数据报的形式通过互联网分发出去。
               IP协议的基本任务是通过互联网传送数据报,各个IP数据报之间是相互独立的。主机上的IP层向运输层提供服务。IP从源运输实体取得数据,通过它的数据链路层服务传给目的主机的IP层。IP协议不保证服务的可靠性,在主机资源不足的情况下,它可能丢弃某些数据报,同时IP协议也不检查被数据链路层丢弃的报文。
               在传送时,高层协议将数据传送给IP协议,IP协议再将数据封装为IP数据报,并交给数据链路层协议通过局域网传送。若目的主机直接连在本网中,IP可直接通过网络将数据报传给目的主机;若目的主机在远程网络中,则IP路由器传送数据报,而路由器则依次通过下一网络将数据报传送到目的主机或再下一个路由器。也即一个IP数据报是通过互联网络,从一个IP模块传到另一个IP模块,直到目的主机为止。
               需要连接独立管理的网络路由器,可以选择它所需的任何协议,这样的协议称为内部网关协议(Interior Gateway Protocol, IGP)。在IP环境中,一个独立管理的系统称为自治系统。
               跨越不同管理域的路由器(如从专用网到PDN)所使用的协议,称为外部网关协议(Exterior Gateway Protocol, EGP),EGP是一组简单的定义完备的正式协议。
               从IP协议的功能可以知道,IP提供的是一种不可靠的无连接的报文分组传送服务。若路由器或交换机故障使网络阻塞,就需要通知发送主机采取相应措施。
               (2)网际控制报文协议(ICMP)。
               为了使互联网能报告差错,或提供有关意外情况的信息,在IP层加入了一类特殊用途的报文机制,即网际控制报文协议(Internet Control Message Protocol, ICMP)。ICMP是IP正式协议的一部分,ICMP数据报通过IP送出,因此它在功能上属于网络第三层。
               分组接收方利用ICMP来通知IP模块,发送某些方面所需的修改。ICMP通常是由发现别的站发来的报文有问题的站产生的。例如,可由目的主机或中继路由器来发现问题并产生有关的ICMP数据报。如果一个分组不能传送,ICMP便可以被用来报告分组源,说明有网络、主机或端口不可达。ICMP也可以用来报告网络阻塞。
               (3)地址解析协议(ARP)。
               在TCP/IP网络环境下,每个主机都分配了一个32位的IP地址,这种互联网地址是在国际范围内标识主机的一种逻辑地址。为了能让报文在物理网上传送,必须要知道彼此的物理地址。这样,就存在把互联网地址变换为物理地址的地址转换问题。以以太网(Ethernet)环境为例,为了正确地向目的站传送报文,必须把目的站的32位IP地址转换成48位以太网目的地址(DA)。这就需要在网络层有一组协议将IP地址转换为相应物理网络地址,这组协议就是ARP。
               在进行报文发送时,如果源网络层给的报文只有IP地址,而没有对应的以太网地址,则网络层广播ARP请求以获取目的站信息,而目的站必须回答该ARP请求。这样源站点可以收到以太网48位地址,并将地址放入相应的高速缓存(Cache)。下一次源站点对同一目的站点的地址转换可直接引用高速缓存中的地址内容。地址转换协议使主机可以找出同一物理网络中任一个物理主机的物理地址,只需给出目的主机的IP地址即可。这样,网络的物理编址可以对网络层服务透明。
               在互联网环境下,为了将报文送到另一个网络的主机,数据报需先确定发送方所在网络的路由器。因此,发送主机首先必须确定路由器的物理地址,然后依次将数据发往接收端。除基本ARP机制外,有时还需在路由器上设置代理ARP,其目的是由IP路由器代替目的站对发送方ARP请求作出响应。
               (4)反向地址解析协议(RARP)。
               反向地址解析协议(Reverse Address Resolution Protocol, RARP)用于一种特殊情况,如果站点初始化以后,只有自己的物理地址而没有IP地址,则它可以通过RARP协议,发出广播请求,征求自己的IP地址,而RARP服务器则负责回答。这样,无IP地址的站点可以通过RARP协议取得自己的IP地址,这个地址在下一次系统重新开始以前都有效,不用连续广播请求。RARP广泛用于获取无盘工作站的IP地址。
               3)传输层
               传输层的功能是提供应用程序间的通信。其功能包括格式化信息流和提供可靠传输。为实现可靠性传输,传输层协议规定接收端必须发回确认信息,并且假如分组丢失,必须重新发送从而保证可靠传输。
               TCP/IP在传输层提供了两个主要的协议,即传输控制协议(Transfer Control Protocol, TCP)和用户数据报协议(User Datagram Protocol, UDP)。另外,还有其他一些协议,如用于传送数字化语音的NVP协议。
               TCP协议提供的是一种可靠的数据流服务。当传送受差错干扰的数据,或基础网络故障,或网络负荷太重而使网际基本传输系统(无连接报文递交系统)不能正常工作时,就需要通过其他协议来保证通信的可靠。TCP就是这样的协议,它对应于OSI模型的运输层,在IP协议的基础上,提供端到端的面向连接的可靠传输。
               TCP采用"带重传的肯定确认"技术来实现传输的可靠性。简单的"带重传的肯定确认"是指与发送方通信的接收者,每接收一次数据,就送回一个确认报文,发送者对每个发出去的报文都留一份记录,等收到确认信息之后再发出下一报文分组。发送者发出一个报文分组时,启动一个计时器,若计时器计数完毕,确认信息还未到达,则发送者重新发送该报文分组。
               简单的确认重传严重浪费带宽,TCP还采用一种叫"滑动窗口"的流量控制机制来提高网络的吞吐量,窗口的范围决定了发送方发送的但未被接收方确认的数据报的数量。每当接收方正确收到一则报文时,窗口便向前滑动,这种机制决定了发送方发送的但未被接收方确认的数据报的数量,从而提高了网络的吞吐量。
               TCP通信建立在面向连接的基础上,实现了一种"虚电路"的概念。双方通信之前,先建立一条连接,然后双方就可以在其上发送数据流。这种数据交换方式能提高效率,但事先建立连接和事后拆除连接需要开销。TCP连接的建立采用三次握手,整个过程由以下3个环节组成。一是初始化主机通过一个同步比特SYN置位(即SYN=1)的数据段发出会话请求。二是接收主机通过发回具有以下项目的数据段表示回复:同步比特SYN置位(即SYN=1)、即将发送的数据段的起始字节的顺序号、应答并带有将收到的下一个数据段的字节顺序号。三是请求主机再回送一个数据段,并带有确认顺序号和确认号。
               用户数据报协议(UDP)是对IP协议簇的扩充,它增加了一种机制,发送方使用这种机制可以区分一台计算机上的多个接收者。每个UDP报文除了包含某用户进程发送的数据外,还包含报文目的端口的编号和报文源端口的编号。UDP的这种扩充使得在两个用户进程之间传送数据报成为可能。
               UDP协议是依靠IP协议来传送报文的,因而它的服务和IP一样,是不可靠的。这种服务不能确认,不对报文排序,也不进行流量控制,UDP报文可能会出现丢失、重复、失序等现象。
               4)应用层
               应用层的功能是向用户提供一组常用的应用程序,如电子邮件、文件传输访问、远程登录等。远程登录使用Telnet协议提供了在其他网络主机上注册的接口,Telnet会话提供了基于字符的虚拟终端。文件传输协议(FTP)可以提供网络内机器间的文件复制功能。
               文件传输协议是互联网提供的用于访问远程机器的一个协议,它使用户可以在本地机与远程机之间进行有关文件的操作。FTP工作时建立两条TCP连接:一条用于传送文件;另一条用于传送控制。
               FTP采用客户机/服务器模式,它包含客户FTP和服务器FTP。客户FTP启动传送过程,而服务器对其作出应答。客户FTP大多有一个交互式界面,具有访问权限的客户可以灵活地向远地传文件或从远地取文件。
               Telnet的连接是一个TCP连接,用于传送具有Telnet控制信息的数据。它提供了与终端设备或终端进程交互的标准方法,支持终端到终端的连接及进程到进程分布式计算的通信。
               DNS是一个域名服务的协议,提供域名到IP地址的转换,允许对域名资源进行分散管理。DNS最初设计的目的是使邮件发送方知道邮件接收主机及邮件发送主机的IP地址,后来发展成为可服务于其他许多目标的协议。
               互联网标准中的电子邮件协议是一个简单的基于文件的协议,用于可靠、有效的数据传输。SMTP作为应用层的服务,并不关心它下面采用的是何种传输服务,它可通过网络在TCP连接上传送邮件,或者简单地在同一机器的进程之间通过进程通信的通道来传送邮件。这样,邮件传输就独立于传输子系统,可在TCP/IP环境、OSI的传输层或X.25协议环境中传输邮件。
               邮件发送之前必须协商好发送者、接收者。在邮件传输过程中,所经过的路由被记录下来。这样,当邮件不能正常传输时可按原路由找到发送者。
               在当前的UNIX版本中,已将TCP/IP协议融入其中,使之成为UNIX操作系统的一部分。DOS上也推出了相应的TCP/IP软件产品。Sun公司则将TCP/IP广泛推向商务系统,它在所在的工作站系统中都预先安装了TCP/IP网络软件及网络硬件,使网络和计算机成为一体,同时也使TCP/IP网络软件及其客户机/服务器的工作方式为广大用户所接受。
               TCP/IP与OSI RM的关系
               TCP/IP的应用层对应着OSI模型的会话层、表示层和应用层,TCP/IP的网络接口层对应着OSI模型的物理层和数据链路层,而TCP/IP的传输层、网络层与OSI的传输层、网络层分别对应。
               IP数据包的格式
               一个IP数据包由首部和数据两部分组成。首部由固定20B的基本首部和0~40B可变长度的任选项组成。其中首部字段主要包括版本号、首部长度、服务类型、数据包长度、标识、标志、数据块偏移值、生存期、协议号、首部校验和以及地址等。
 
       TCP/IP协议的结构
        TCP/IP也是一个分层结构,TCP/IP分为4层,由下到上分别是网络接口层、网络层、传输层和应用层。
        1)网络接口层
        网络接口层是TCP/IP软件的最底层,负责接收IP数据报并通过网络将其发送,或者从网络上接收物理帧,抽出IP数据报交给IP层。
        一般情况下,各物理网络可以使用自己的数据链路层协议和物理层协议,不需要在数据链路层上设置专门的TCP/IP协议。但是,当使用串行线路连接主机与网络,或连接网络与网络时(如用户使用电话线和Modem接入因特网或两个相距较远的网络通过数据专线互联时),则需要在数据链路层运行专门的SLIP(Serial Line IP)协议的PPP(Point to Point Protocol)协议。
        SLIP协议提供在串行通信线路上封装IP分组的简单方法,使远程用户能通过电话线和Modem方便地接入TCP/IP网络。
        SLIP是一种简单的组帧方式,使用时还存在一些问题。首先,SLIP不支持在连接过程中的动态IP地址分配,通信双方必须事先告知对方IP地址,这给没有固定IP地址的个人用户上Internet带来了很大的不便;其次,SLIP帧中无协议类型字段,因此它只能支持IP协议;再有,SLIP帧中无校验字段,因此链路层上无法检测出传输差错,必须由上层实体或具有纠错能力的Modem来解决传输差错问题。
        为了解决SLIP协议存在的问题,在串行通信应用中又开发了PPP协议。PPP协议是一种有效的点一点通信协议,它由串行通信线路上的组帧方式,用于建立、配置、测试和拆除数据链路的链路控制协议(LCP)及一组用以支持不同网络层协议的网络控制协议(Network Control Protocol, NCP)3部分组成。
        由于PPP帧中设置了校验字段,因而PPP在链路层上具有差错检验的功能。PPP中的LCP协议提供了通信双方进行参数协商的手段,并且提供了一组NCPs协议,使得PPP可以支持多种网络层协议,如IP、IPX、OSI等。另外,支持IP的NCP提供了在建立连接时动态分配IP地址的功能,从而解决了个人用户上Internet的问题。
        2)网络层
        网络层中含有4个重要协议,即网际协议(IP)、网际控制报文协议(ICMP)、地址解析协议(Address Resolution Protocol, ARP)和反向地址解析协议(RARP)。
        网络层的功能主要由IP协议提供。除了提供端到端的分组分发功能外,IP协议还提供了很多扩充功能。例如,为了克服数据链路层对帧大小的限制,网络层提供了数据分块和重组功能,这使得很大的IP数据报能以较小的分组在网上传输。
        网络层的另一个重要服务是在互相独立的局域网上建立互联网络,即网际网。网间的报文来往根据其目的IP地址通过路由器传到另一网络。
        (1)网际协议(IP)。
        网络层最重要的协议是网际协议(IP),它将多个网络连成一个互联网,可以把高层的数据以多个数据报的形式通过互联网分发出去。
        IP协议的基本任务是通过互联网传送数据报,各个IP数据报之间是相互独立的。主机上的IP层向运输层提供服务。IP从源运输实体取得数据,通过它的数据链路层服务传给目的主机的IP层。IP协议不保证服务的可靠性,在主机资源不足的情况下,它可能丢弃某些数据报,同时IP协议也不检查被数据链路层丢弃的报文。
        在传送时,高层协议将数据传送给IP协议,IP协议再将数据封装为IP数据报,并交给数据链路层协议通过局域网传送。若目的主机直接连在本网中,IP可直接通过网络将数据报传给目的主机;若目的主机在远程网络中,则IP路由器传送数据报,而路由器则依次通过下一网络将数据报传送到目的主机或再下一个路由器。也即一个IP数据报是通过互联网络,从一个IP模块传到另一个IP模块,直到目的主机为止。
        需要连接独立管理的网络路由器,可以选择它所需的任何协议,这样的协议称为内部网关协议(Interior Gateway Protocol, IGP)。在IP环境中,一个独立管理的系统称为自治系统。
        跨越不同管理域的路由器(如从专用网到PDN)所使用的协议,称为外部网关协议(Exterior Gateway Protocol, EGP),EGP是一组简单的定义完备的正式协议。
        从IP协议的功能可以知道,IP提供的是一种不可靠的无连接的报文分组传送服务。若路由器或交换机故障使网络阻塞,就需要通知发送主机采取相应措施。
        (2)网际控制报文协议(ICMP)。
        为了使互联网能报告差错,或提供有关意外情况的信息,在IP层加入了一类特殊用途的报文机制,即网际控制报文协议(Internet Control Message Protocol, ICMP)。ICMP是IP正式协议的一部分,ICMP数据报通过IP送出,因此它在功能上属于网络第三层。
        分组接收方利用ICMP来通知IP模块,发送某些方面所需的修改。ICMP通常是由发现别的站发来的报文有问题的站产生的。例如,可由目的主机或中继路由器来发现问题并产生有关的ICMP数据报。如果一个分组不能传送,ICMP便可以被用来报告分组源,说明有网络、主机或端口不可达。ICMP也可以用来报告网络阻塞。
        (3)地址解析协议(ARP)。
        在TCP/IP网络环境下,每个主机都分配了一个32位的IP地址,这种互联网地址是在国际范围内标识主机的一种逻辑地址。为了能让报文在物理网上传送,必须要知道彼此的物理地址。这样,就存在把互联网地址变换为物理地址的地址转换问题。以以太网(Ethernet)环境为例,为了正确地向目的站传送报文,必须把目的站的32位IP地址转换成48位以太网目的地址(DA)。这就需要在网络层有一组协议将IP地址转换为相应物理网络地址,这组协议就是ARP。
        在进行报文发送时,如果源网络层给的报文只有IP地址,而没有对应的以太网地址,则网络层广播ARP请求以获取目的站信息,而目的站必须回答该ARP请求。这样源站点可以收到以太网48位地址,并将地址放入相应的高速缓存(Cache)。下一次源站点对同一目的站点的地址转换可直接引用高速缓存中的地址内容。地址转换协议使主机可以找出同一物理网络中任一个物理主机的物理地址,只需给出目的主机的IP地址即可。这样,网络的物理编址可以对网络层服务透明。
        在互联网环境下,为了将报文送到另一个网络的主机,数据报需先确定发送方所在网络的路由器。因此,发送主机首先必须确定路由器的物理地址,然后依次将数据发往接收端。除基本ARP机制外,有时还需在路由器上设置代理ARP,其目的是由IP路由器代替目的站对发送方ARP请求作出响应。
        (4)反向地址解析协议(RARP)。
        反向地址解析协议(Reverse Address Resolution Protocol, RARP)用于一种特殊情况,如果站点初始化以后,只有自己的物理地址而没有IP地址,则它可以通过RARP协议,发出广播请求,征求自己的IP地址,而RARP服务器则负责回答。这样,无IP地址的站点可以通过RARP协议取得自己的IP地址,这个地址在下一次系统重新开始以前都有效,不用连续广播请求。RARP广泛用于获取无盘工作站的IP地址。
        3)传输层
        传输层的功能是提供应用程序间的通信。其功能包括格式化信息流和提供可靠传输。为实现可靠性传输,传输层协议规定接收端必须发回确认信息,并且假如分组丢失,必须重新发送从而保证可靠传输。
        TCP/IP在传输层提供了两个主要的协议,即传输控制协议(Transfer Control Protocol, TCP)和用户数据报协议(User Datagram Protocol, UDP)。另外,还有其他一些协议,如用于传送数字化语音的NVP协议。
        TCP协议提供的是一种可靠的数据流服务。当传送受差错干扰的数据,或基础网络故障,或网络负荷太重而使网际基本传输系统(无连接报文递交系统)不能正常工作时,就需要通过其他协议来保证通信的可靠。TCP就是这样的协议,它对应于OSI模型的运输层,在IP协议的基础上,提供端到端的面向连接的可靠传输。
        TCP采用"带重传的肯定确认"技术来实现传输的可靠性。简单的"带重传的肯定确认"是指与发送方通信的接收者,每接收一次数据,就送回一个确认报文,发送者对每个发出去的报文都留一份记录,等收到确认信息之后再发出下一报文分组。发送者发出一个报文分组时,启动一个计时器,若计时器计数完毕,确认信息还未到达,则发送者重新发送该报文分组。
        简单的确认重传严重浪费带宽,TCP还采用一种叫"滑动窗口"的流量控制机制来提高网络的吞吐量,窗口的范围决定了发送方发送的但未被接收方确认的数据报的数量。每当接收方正确收到一则报文时,窗口便向前滑动,这种机制决定了发送方发送的但未被接收方确认的数据报的数量,从而提高了网络的吞吐量。
        TCP通信建立在面向连接的基础上,实现了一种"虚电路"的概念。双方通信之前,先建立一条连接,然后双方就可以在其上发送数据流。这种数据交换方式能提高效率,但事先建立连接和事后拆除连接需要开销。TCP连接的建立采用三次握手,整个过程由以下3个环节组成。一是初始化主机通过一个同步比特SYN置位(即SYN=1)的数据段发出会话请求。二是接收主机通过发回具有以下项目的数据段表示回复:同步比特SYN置位(即SYN=1)、即将发送的数据段的起始字节的顺序号、应答并带有将收到的下一个数据段的字节顺序号。三是请求主机再回送一个数据段,并带有确认顺序号和确认号。
        用户数据报协议(UDP)是对IP协议簇的扩充,它增加了一种机制,发送方使用这种机制可以区分一台计算机上的多个接收者。每个UDP报文除了包含某用户进程发送的数据外,还包含报文目的端口的编号和报文源端口的编号。UDP的这种扩充使得在两个用户进程之间传送数据报成为可能。
        UDP协议是依靠IP协议来传送报文的,因而它的服务和IP一样,是不可靠的。这种服务不能确认,不对报文排序,也不进行流量控制,UDP报文可能会出现丢失、重复、失序等现象。
        4)应用层
        应用层的功能是向用户提供一组常用的应用程序,如电子邮件、文件传输访问、远程登录等。远程登录使用Telnet协议提供了在其他网络主机上注册的接口,Telnet会话提供了基于字符的虚拟终端。文件传输协议(FTP)可以提供网络内机器间的文件复制功能。
        文件传输协议是互联网提供的用于访问远程机器的一个协议,它使用户可以在本地机与远程机之间进行有关文件的操作。FTP工作时建立两条TCP连接:一条用于传送文件;另一条用于传送控制。
        FTP采用客户机/服务器模式,它包含客户FTP和服务器FTP。客户FTP启动传送过程,而服务器对其作出应答。客户FTP大多有一个交互式界面,具有访问权限的客户可以灵活地向远地传文件或从远地取文件。
        Telnet的连接是一个TCP连接,用于传送具有Telnet控制信息的数据。它提供了与终端设备或终端进程交互的标准方法,支持终端到终端的连接及进程到进程分布式计算的通信。
        DNS是一个域名服务的协议,提供域名到IP地址的转换,允许对域名资源进行分散管理。DNS最初设计的目的是使邮件发送方知道邮件接收主机及邮件发送主机的IP地址,后来发展成为可服务于其他许多目标的协议。
        互联网标准中的电子邮件协议是一个简单的基于文件的协议,用于可靠、有效的数据传输。SMTP作为应用层的服务,并不关心它下面采用的是何种传输服务,它可通过网络在TCP连接上传送邮件,或者简单地在同一机器的进程之间通过进程通信的通道来传送邮件。这样,邮件传输就独立于传输子系统,可在TCP/IP环境、OSI的传输层或X.25协议环境中传输邮件。
        邮件发送之前必须协商好发送者、接收者。在邮件传输过程中,所经过的路由被记录下来。这样,当邮件不能正常传输时可按原路由找到发送者。
        在当前的UNIX版本中,已将TCP/IP协议融入其中,使之成为UNIX操作系统的一部分。DOS上也推出了相应的TCP/IP软件产品。Sun公司则将TCP/IP广泛推向商务系统,它在所在的工作站系统中都预先安装了TCP/IP网络软件及网络硬件,使网络和计算机成为一体,同时也使TCP/IP网络软件及其客户机/服务器的工作方式为广大用户所接受。
 
       net
        在网络管理中,最为常用的就是net命令家族。常用的net命令有以下几个。
        .net view命令:显示由指定的计算机共享的域、计算机或资源的列表。
        .net share:用于管理共享资源,使网络用户可以使用某一服务器上的资源。
        .net use命令:用于将计算机与共享的资源相连接或断开,或者显示关于计算机连接的信息。
        .net start命令:用于启动服务,或显示已启动服务的列表。
        .net stop命令:用于停止正在运行的服务。
        .net user命令:可用来添加或修改计算机上的用户账户,或者显示用户账户的信息。
        .net config命令:显示正在运行的可配置服务,或显示和更改服务器服务或工作站服务的设置。
        .net send命令:用于将消息(可以是中文)发送到网络上的其他用户、计算机或者消息名称上。
        .net localgroup命令:用于添加、显示或修改本地组。
        .net accounts命令:可用来更新用户账户数据库、更改密码及所有账户的登录要求。
 
       TCP
        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
        由于OSI协议的实现较为复杂,运行效率低,很少有厂商推出符合OSI标准的商用产品。目前,互联网上广泛使用的是TCP/IP。TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/互联网络协议)是Internet上不同子网之间的主机进行数据交换所遵守的网络通信协议。TCP/IP一般泛指所有与Internet有关的一系列网络协议的总称,其中TCP和IP是其中最重要的两个协议。TCP/IP体系结构主要由四层构成,分别为网络接口层、网络层、传输层和应用层。
        TCP/IP采用的四层体系结构与OSI参考模型采用的七层体系结构是对应的,它们的结构对比如下图所示。
        
        TCP/IP与OSI体系结构的对比
               网络接口层
               网络接口层也称链路层(Link Layer)或数据链路层,相当于OSI/RM参考模型的第1层和第2层,负责与网络中的传输介质打交道。常用的链路层技术主要有以太网(Ethernet)、令牌环(Token Ring)、光纤数据分布接口(FDDI)、X.25、帧中继(Frame Relay)、ATM等。
               网络层
               网络层的作用是将数据包从源主机发送出去,并且使这些数据包独立地到达目标主机。数据包传送过程中,到达目标主机的顺序可能不同于它们被发送时的顺序。因为网络情况复杂,随时可能有一些路径发生故障或是网络中的某处出现数据包的堵塞。网络层提供的服务是不可靠的,可靠性由传输层实现。
               传输层
               传输层提供应用程序之间的通信。传输层提供了可靠的传输协议TCP和不可靠的传输协议UDP。TCP是一个可靠的、面向连接的协议,允许在因特网上的两台主机之间进行信息的无差错传输。在网络传输过程中,为了保证数据在网络中传输的正确、有序,要使用“连接”的概念,一个TCP连接是指在传输数据前先要传送三次握手信号,以使双方为数据的传送做准备。UDP是用户数据报协议,使用此协议时,源主机一有数据就发送出去,不管发送的数据包是否能到达目标主机、数据包是否会出错,收到数据包的主机都不会通知发送方其是否正确地收到了数据,因此UDP是一种不可靠的传输协议。
               应用层
               应用层直接为用户的应用进程提供服务,如支持万维网应用的HTTP,支持电子邮件的SMTP,支持文件传送的FTP等。
 
       栈
               栈的定义
               栈是只能在表的一端进行插入、删除的线性表。栈中允许插入、删除的一端称为栈顶,相反,栈中不允许插入、删除的一端称为栈底。处于栈顶位置的数据元素称为栈顶元素,不含任何数据元素的栈称为空栈。栈的特点为后进先出(Last In First Out, LIFO)。
               下图是一个栈的示意图,通常用指针top指示栈顶的位置,用指针bottom指向桟底。栈顶指针top动态反映栈的当前位置。
               
               栈的出入示意图
               栈的基本操作
               栈的基本操作主要有以下6种。
               .InitStack(&S):初始化操作,构造一个空栈S。
               .StackEmpty(S):若栈S为空栈,返回1,否则返回0。
               .Push(&S, e):插入元素e为新的栈顶元素。
               .Pop(&S,&e):删除S的栈顶元素,并用e返回其值。
               .GetTop(S,&e):用e返回S的栈顶元素。
               .ClearStack(&S):将S清为空栈。
               栈的顺序存储结构
               栈的顺序存储用向量作为栈的存储结构,向量S表示栈,m表示栈的大小,用指针top指向栈顶位置,S[top]表示栈顶元素,当在栈中进行插入、删除操作时,都要移动栈指针;而当top=m-1时,则栈满,当top=-1时,表示栈空。同时为了避免浪费空间可以采用双栈机制,即向量的两端为栈底。
               栈的顺序存储结构的C语言描述如下:
               
               栈的说明如下。
               .由于C语言的数组下标的范围从0至StackSize-1,初始化设置sq.top=-1。
               .栈空条件为sq.top=-1,栈满条件为sq.top=StackSize-1。
               .栈顶元素为sq.data[sq.top]。
               .元素压栈的规则为:在栈不满时,先改变栈顶指针(top=top+1),再压栈。出栈时,在桟非空时,先取栈顶元素的值,再修改栈顶指针(top=top-1)。
               .栈中元素的个数为当前栈顶指针加1。
               在顺序栈上实现基本操作的有关函数如下。
               1)初始化InitStack(SqStack *S)
               
               2)判空StackEmpty(SqStack S)
               
               3)压栈Push(SqStack *S, ElemType e)
               
               4)出栈Pop(SqStack *S, ElemType *e)
               
               5)取栈顶GetTop(SqStack *S, ElemType*e)
               
               6)清栈ClearStack(SqStack *S)
               
               栈的链式存储结构
               栈的链式存储也叫链栈,我们把插入和删除均在链表表头进行的链表称为链栈。链栈也分有头节点和无头节点两种。带头节点的链栈操作比较方便。
               链栈的节点类型定义如下:
               
               链栈的约定与说明如下。
               .栈以链表的形式出现,链表(不带头节点)首指针为S,即栈顶为S,链表尾节点为栈底。
               .初始化时,S=NULL(不带头节点);S=(LStack *),malloc(sizeof(LStack)),S→next=NULL(带头节点)。
               .栈顶指针的引用为S(不带头节点)或S→next(带头节点),栈顶元素的引用为S→data(不带头节点)或S→next→data(带头节点)。
               .栈空条件为S==NULL(不带头节点)或S→next=NULL(带头节点)。
               .进栈操作和出栈操作与单链表在开始节点的插入和删除操作一致。
               对不带头节点的链栈,其基本操作函数如下。
               1)初始化initstack(LStack *S)
               
               2)压栈(入栈)push(LStack *S, ElemType x)
               
               3)退栈(出栈)pop(LStack *S, ElemType *x)
               
               4)读栈顶元素gettop(LStack *S, ElemType *x)
               
               5)判栈空isempty(LStack *S)
               
               栈的应用
               栈具有广泛的应用,例如,求表达式的值及递归到非递归等。
               1)表达式求值
               在源程序编译中,若要把一个含有表达式的赋值语句翻译成正确求值的机器语言,首先应正确地解释表达式。例如,对赋值语句X=4+8×2-3;,其正确的计算结果应该是17,但若在编译程序中简单地按自左向右扫描的原则进行计算,则为:X=12×2-3=24-3=21。这个结果显然是错误的。因此,为了使编译程序能够正确地求值,必须事先规定求值的顺序和规则。通常采用运算符优先法。
               2)递归到非递归
               将一个递归算法转换为功能等价的非递归算法有很多方法,可以使用栈保存中间结果。其一般形式如下:
               
               例如,求n!的递归函数如下:
               
               使用转换成等价的非递归算法如下:
               
               其中,st[top][0]用于存放n值,st[top][1]用于存放n!值,在初始时,设置st[top][1]为0,表不n!尚未求出。
   题号导航      2019年下半年 网络管理员 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第24题    在手机中做本题