telnet协议学习笔记2

上一篇 / 下一篇  2007-11-28 10:53:16 / 个人分类:网络协议

2.  原理

h'y/iWV1o ujz Q0Telnet协议的主体由三个部分组成:

!rI{ o#t3?051Testing软件测试网 \$LC H:_(cYd(J

网络虚拟终端(NVTNetwork Virtual Terminal)的定义;

%c/Y4O+^v aX0

qI0[(ez{^}1YsZ0操作协商定义;

/Sp \ z;Oh ^W'P0

y$^L mz0协商有限自动机;

2\6_U4jD"{s0

2.1.网络虚拟终端(NVT

2.1.1.   NVT工作原理

51Testing软件测试网C'E| ~0@7m0A7B

顾名思义,网络虚拟终端(NVT)是一种虚拟的终端设备,它被客户和服务器所采用,用来建立数据表示和解释的一致性。

#E;Y a#H"U7u,w$f0

2.1.2.   NVT的定义

9J%B/iU#z3k1LX01.        NVT的组成51Testing软件测试网YclohO A

51Testing软件测试网&D:|k'^l;^ gv2d

网络虚拟终端NVT包括两个部分:

Ry fq'fc0

.k:YTLD O@z0Ø        输出设备:输出远程数据,一般为显示器

8g"G}\dH;x0

"J7^N(]0T)w0Ø        输入设备:本地数据输入

0g~ Zr:d(eW(y:{n051Testing软件测试网.L"L'X8SE

2.      NVT上传输的数据格式51Testing软件测试网 nL\X.H-H`

51Testing软件测试网+r}.]M|p*d

在网络虚拟终端NVT上传输的数据采用8bit字节数据,其中最高位为0的字节用于一般数据,最高位为1的字节用于NVT命令

@1S2[8{ fuH&|X051Testing软件测试网"j&s+I2pK0K;D D}vO/b

3.      NVTTELNET中的使用51Testing软件测试网 ZD;sD;f C8be'G

F^9U4Y/xi.S0TELNET使用了一种对称的数据表示,当每个客户机发送数据时,把它的本地终端的字符表示影射到NVT的字符表示上,当接收数据时,又把NVT的表示映射到本地字符集合上。51Testing软件测试网!Ku;r`5o

51Testing软件测试网8c R6i4qtPk

在通信开始时,通信双方都支持一个基本的NVT终端特性子集(只能区分何为数据,何为命令),以便在最低层次上通信,在这个基础上,双方通过NVT命令协商确定NVT的更高层次上的特性,实现对NVT功能的扩展。

Z3c(^4SzA!u)m3R*@051Testing软件测试网c [idzj0f(Q,{

TELNET中存在大量的子协议用于协商扩展基本的网络虚拟终端NVT的功能,由于终端类型的多样化,使得TELNET协议族变得庞大起来。

*R:Zg/vnU0

2.2.操作协商

2.2.1.   为什么要协商操作选项

ft[^7ZA~ r0当定义了网络虚拟终端设备后,通信的双方就可以在一个较低的层次上实现数据通信,但基本的NVT设备所具有的特性是十分有限的,它只能接收和显示7位的ASCII码,没有最基本的编辑能力,所以简单的NVT设备是没有实际应用意义的;为此TELNET协议定义了一族协议用于扩展基本NVT的功能,目的是使NVT能够最大限度地达到用户终端所具有的功能。

3V+|1OZ0uF'@051Testing软件测试网{$] a-CG

为了实现对多种终端特性的支持,TELNET协议规定在扩展NVT功能时采用协商的机制,只有通信双方通过协商后达成一致的特性才能使用,才能赋予NVT该项特性,这样就可以支持具有不同终端特性的终端设备可以互连,保证他们是工作在他们自己的能力以内。51Testing软件测试网+e&G!{*_k

2.2.2.   操作协商命令格式

51Testing软件测试网&er/T bzrS@s[

TELNET的操作协商使用NVT命令,即最高位为1的字节流,每条NVT命令以字节IAC0xFF)开始。原理如下:

#Hd~\_Ng0

xC/K V,ZK`(x0只要客户机或服务器要发送命令序列而不是数据流,它就在数据流中插入一个特殊的保留字符,该保留字符叫做解释为命令IAC Interpret As Command)字符。当接收方在一个入数据流中发现IAC字符时,它就把后继的字节处理为一个命令序列。下面列出了所有的Telnet NVT命令,其中很少用到。

tB8xy b+U0

1   TELNET命令

7b$Q c;lHp,P&Xi0

&F.ms%F*I[1r&e0名称51Testing软件测试网4Y9S(^QZY

ue$C1vz~8W0编码51Testing软件测试网 nCxB~0~*d1P

|"q@jz0说明51Testing软件测试网wKM,_&x#y Z#\ w

&bYF-K'[$L,x2n7j-r0EOF51Testing软件测试网?0A"L*n*S#k*| dc gV

$`v&n0A5K'm{023651Testing软件测试网(e*qD3I4YG

4B!V,Tx@/]3|&j0文件结束符

gw$GV_0

$@(`3b2ZpO0c3l0SUSP

aM+Qv [!b.B3T&P0
51Testing软件测试网 }_3d1SGQ#dhZf

237

.ae5hTe0
51Testing软件测试网z9CKT(T1] q:c.zF

挂起当前进程51Testing软件测试网Qf_`OFA+@

51Testing软件测试网%w L0G1eBrA!b*Z$h

ABORT

N-|(}*jc6\M0

Ju7Kj4D Ws;~m023851Testing软件测试网"] ^;pVX|._L7n

8w4]"G b3]:Q;Fm I` h0中止进程51Testing软件测试网Aj B6q$r8zx R

51Testing软件测试网;\+LEH8D&ih*[ oSL1B

EOR

]Y8lIs1n&x,@0
51Testing软件测试网l}h| d f0K7n2NT+rg)g

239

`5z+l.? L0z0
51Testing软件测试网/I'VSl G*_S)]+V

记录结束符

#Kq.{vWt6N0

3T{vX"}5o Y0SE51Testing软件测试网:rL1A(M%j/e*F5u

W!kJ}w][024051Testing软件测试网Vj{gQh

8Fh`B%nQ5y0子选项结束51Testing软件测试网!F f F;z*^4A'B

51Testing软件测试网q5q!y J)Q+t

NOP51Testing软件测试网9[+q0]H{

51Testing软件测试网C*I.i8Y$P-eD

241

~F9X6Z'R;j/Q0
51Testing软件测试网IsoM.JC

空操作

1\Xa!X U/L0

#}:S)[6@G L3`wD(d0DM

G/nC)tCC0
51Testing软件测试网{$\j fKm:C7T

242

B8L&s2WojK0

(Ku-EU"HuM&H0数据标记

M(Ei td{t0
51Testing软件测试网3{'lk&mQ4Ofle5c

BRK51Testing软件测试网$R-Bgt(vY7l\

51Testing软件测试网/]2y8UZ5{|*YKm(M2u

24351Testing软件测试网'trp;xW2H k$|

51Testing软件测试网%e a(Dt6u,s}4u.d

终止符(break51Testing软件测试网 wIwe|s

+Rj:[#xNW {)h{n0IP51Testing软件测试网(qnT ~ Nv5h

51Testing软件测试网Y.ua"np

244

c o'm/~8vqp4a2y,`0
51Testing软件测试网Y`#x|kT&bu

终止进程51Testing软件测试网s[/@ ~N ]8|

51Testing软件测试网 |;u9E2iKN9dBeq

AO

/}a*_M#VC `#b0

S \"ZC#S-dQyC`024551Testing软件测试网\BE Q0U c'O

51Testing软件测试网x)Xi)P|7yga;gf

终止输出

kb3Y^)pv6L5y\!m0

/BmD9L;c@'\D0AYT51Testing软件测试网)AcxA.V6H(l

2Q2`Lz7Zf024651Testing软件测试网y o4KJ @

51Testing软件测试网:B$gL9W0m%?5v5t'LV

请求应答

\T z-~xe0

hYU#R%aB\0EC51Testing软件测试网Fu$HE q\ NzN

*u3QSH7t$W0247

)`l+i!]iC1G0

sxR;U*rF)d0终止符51Testing软件测试网(jJLZ!I

51Testing软件测试网&O6m)d4[(Nox3Y!g|

EL51Testing软件测试网"_!Mm9iT,s

r7Hn)u6_,p(~"M0248

I1@5|OKQ4j/R!Ui0

a:}o$co#q'}0擦除一行

%N-^1HJ${0

@r1{ c1n6Um,W}P0GA51Testing软件测试网^OwI0u/F(Qy I o7N

51Testing软件测试网_y4z0hpk0d

24951Testing软件测试网7{6_!eG$E dV

51Testing软件测试网Io hu/bTZdrs

继续51Testing软件测试网]UV%Oxz

$Yp$c:EBo `0SB

"\$LI5VF GN0
51Testing软件测试网h'eu3gij}

250

YsG1@ K0
51Testing软件测试网a:m-r W#{es%]6_.S)lFS

子选项开始51Testing软件测试网!Nf t.d3[u+h

51Testing软件测试网:{3[3N"y"j$K+|m7C

WILL51Testing软件测试网y7Q/y%X Cm(z

51Testing软件测试网'V x7}3n F

251

w$VN fJOZ/A9q0

&nR;VI0l?-|ENx0选项协商

6O,n8~&[tOC%rn0

x1}'r/T:D8J VK3v/q0WONT51Testing软件测试网}+}0E }x[ v+c

c#^C&O-x$ggg:Z7Y025251Testing软件测试网/DG W"nQY p

!DN)bD K1k B0选项协商

/VvraE+v [0

c)b~*L%F(@Ye0DO51Testing软件测试网7z:JjLn ZqyV

(gs] M1q;[_P3u/XI0253

hn)TOMlH0
51Testing软件测试网$OL.^"`? N(]zs,cy

选项协商

&S,`PO$f J"G2W0C0

A-DGIH-m\0DONT51Testing软件测试网|WG*N/qQH

51Testing软件测试网s+EPz"|d

254

3LEA%P kxc0
51Testing软件测试网a T1e \ m2?:n

选项协商51Testing软件测试网.z;C|i5ft4~GW

51Testing软件测试网?B5CZp6j&]l(~ i6a

IAC51Testing软件测试网h$g3s:g q%z*[:|&R\

51Testing软件测试网n@0N'`pP

255

K8i#aS9{0
51Testing软件测试网-b2SLFq/L6g8M3Hi

字符0XFF51Testing软件测试网 kpSNG

0VqH HUW?j(J)n0 51Testing软件测试网&RA ^.g%c+yu%z1F

xN9})V p'qWG Q2g5|0其中常用的TELNET选项协商如下:51Testing软件测试网,rh,RX&Z~i6H%N+D

WILL (option code) 251指示希望开始执行,或者确认现在正在操作指示的选项。

nvLJ T ^E0

WON'T (option code) 252指出拒绝执行或继续招待所指示的选项。

q{T9v-p2SOTM[0

DO (option code) 253指出要求对方执行,或者确认希望对方执行指示的选项。

mQ7]{]w FP0

DON'T (option code) 254指出要求对方停止执行,或者确诊要求对方停止执行指示的选项。

hRx+cB1]*tkF0

;O"M;N%nj.\w0那么对于接收方和发送方有以下几种组合:

;X*a ~K wB_0

2   TELNET选项协商的六种情况

*Th NTgX4f:D0

发送者51Testing软件测试网%ugz-{ TW|@

接收者51Testing软件测试网j7Q\ T@f

说明51Testing软件测试网II,i$]ew} D

WILL

xZ,LVTd3g2L0

DO51Testing软件测试网I?0D*s;VT] t

z8a'l`*_1pV5h0发送者想激活某选项,接受者接收该选项请求

"E2{R-jFOuh:u$W0

WILL51Testing软件测试网+HKs%D:M

DONT51Testing软件测试网C"J k;?Pc\ G

j:n WK)o:d$w/C0发送者想激活某选项,接受者拒绝该选项请求51Testing软件测试网g-I[oz$_ C*{R

DO51Testing软件测试网1}0~ ]b1I-|Ysl c h

WILL

.Q.v?hw%uj0

I3^4l oL"L:w}.s`M0发送者希望接收者激活某选项,接受者接受该请求51Testing软件测试网 x1ol0y `!C

DO

7B2o?/a S*Wk0

DONT51Testing软件测试网h9TTV*C\] d\;r

51Testing软件测试网 N&u i/c0@;jL

发送者希望接收6者激活某选项,接受者拒绝该请求51Testing软件测试网F"h4Xo%K4Q

WONT51Testing软件测试网7?8OO+O^4eh3z.~

DONT

&k&w'cCJ x7y0
51Testing软件测试网V_vR.TN({

发送者希望使某选项无效,接受者必须接受该请求51Testing软件测试网D{7SC-R

DONT51Testing软件测试网C#PmI/ff3|\0ra

WONT

1`"[9_}$`.j(N0\&yg0

'dd y(Y#c/Cnx#c0发送者希望对方使某选项无效,接受者必须接受该请求51Testing软件测试网 Rt c{'A4~!S Q

 

2EZ]]"q4t\0

TAG: telnet 网络协议

 

评分:0

我来说两句

Open Toolbar