1、客户机/服务器方式,使用Internet服务的用户运行客户机软件。客户使用Internet与服务器进行通信。客户机生成一个请求,然后向服务器发出请求,等待应答。当系统启动后,一个或多个服务程序也将启动。服务器一直运行着,以接收请求。,第7章 因特网的主要服务功能,7.1 Internet服务功能概述 7.1.1 因特网最常用的几个服务 1 、远程登录(Telnet):远程 登录 仿真终端 共享工具 2 、电子邮件(Email): 电子邮件 收 发 编辑 处理 3、文件传输(FTP): 数据互传 名和口令 Anonymous FTP 4、万维网(WWW World Wide Web):分布式超媒
2、体 链接 HTML B/S 7.1.2 广域信息系统(WAIS:Wide Area Information Services) WAIS是一个分布式文本搜索系统 WAIS信息库内容丰富,涉及面广,从各类文档到各类专业文档库 应有尽有;系统根据文件的内容建立索引 WAIS允许用户通过使用自然语言给定关键词,可以获得大量的文 本信息,各种资料、文献和图书,7.1.3 信息鼠(Gopher) 菜单驱动的信息查询工具 Gopher 服务器上只有正文信息,内容丰富: 计算机信息 图书馆 讨论组 新闻 (News) FTP 其他的Gopher和信息服务 Phone Books 搜索信息 用Gopher客户
3、软件访问 ,7.1.4 Archie检索工具 Archie的主要功能: 检索匿名FTP及文件的工具,对文件名建立索引 Archie服务器: 全世界1200,如 archie.au 访问Archie服务器方式: Archie 客户软件 Telnet 注册后使用客户软件 E-mail 访问Archie服务器 http:/ - goph,7.1.5 新闻组(Newsgroup) Newsgroup信息服务的主要功能 提供新闻、信息、交谈、评论等信息资源 15000个新闻组(Newsgroup) comp 计算机科学 rec 娱乐及艺术 news 网络新闻 sci 科学研究及应用 soc 社会 ta
4、lk 辩论台 misc 不属于以上几类内容的新闻组 新闻阅读器(Newreader) rn trn nn tin (Unix) Netscape News Xpress WinVN WinTrumpet Outlook,7.1.6 电子广告牌(BBS: Bulletin Board System ) 主要功能: 电子邮件、信息发布、传输文件、谈天交流、分类讨论 可用Telnet或浏览器(IE)访问BBS: telnet http:/:8800/index7.1.7 名址服务 名址服务的主要功能: 名址服务帮助你查找个人信息(电子邮件地址) 名址服务从技术上被称为白页(White Page)
5、主要有如下软件: Whois 以人名为关键字,查找某个人的信息 Finger 查询在某台Internet主机上已注册用户的详细信息 Netfind 基于动态查询,利用现有Internet的信息资料主动搜索整 个Internet,根据用户名和工作单位给出某人的个人信息( 电子邮件地址),7.1.8 交谈工具 talk 以计算机网络为传输媒体,进行实时交谈, 将双方交谈的内容显示在计算机屏幕上。 IRC(Internet Relay Chat)聊天隧道 与Talk不同的是,IRC可以与许多人同时交谈, 任何人都可以加入到聊天隧道中。,7.2 远程登录(Telnet) 7.2.1 什么是Telnet
6、 Telnet是Telecommunication Network protocol的英文缩写,也称远程登录,有的叫远程注册(Remote Login)。 为资源共享,一台机器可以使用本机命令,通过Internet,到达另一台机器 ,该过程称为登录; 一旦一台机器登录到某台机器上,他就成为了那台机器的的“终端”,与那台机器本身的终端享有同样的待遇,在他的权限范围内,共享那台机器的资源。 在计算机通讯中,Kermit,Procomm,Crosstalk,OnLin-pc等也提供了远程登录功能。 这里所说的是Internet网上的远程登录,它是TCP/IP协议中应用层的一个协议。Telnet由TC
7、P/IP支持,并由TCP/IP完成其网络功能。 注意: “远”字并非指距离。 Telnet 不是Telenet ,Telenet是一个公共数据交换网。,Telnet Server,Username:Password:,Internet,Telnet,北京大学,加州大学,7.2.2 Telnet是如何工作的 1、Telenet采用了Client/Server结构 使用了 TCP/IP协议族。 2、客户端运行Telnet 建立与服务器端的TCP连接 ; 接收用户的输入命令及其他信息; 将命令及信息处理; 将相关信息通过TCP 发送给服务器端; 接收服务器端返回的信息并做相应处理如显示。 3、服务器
8、端不间断地运行服务程序Telnetd 通知正在准备接受连接的网络软件,服务作业已进入就续状态; 网络软件建立与客户机的TCP连接; 等候以标准格式出现的服务请求; 对到来的服务请求命令给予执行; 把服务结果按标准格式回送给客户机; 继续等待服务。,4、必备条件 Telnetd 必须随时等候接受请求与服务,客户机必须运行Telnet; Telnetd 必须是多用户、多进程;客户机则可以是单用户; 必须知道要登录的主机名或IP地址; 必须是登录机的合法用户,具有给定的权限。7.2.3 如何使用Telnet 1、启动客户程序命令格式 telnet remote-system port-number
9、(1) telnet 命令名,注意也有别的名称,如NVT220. (2) remote-system 主机名(域名) 或IP地址 内部命令模式:Telnet 直接连接模式,通过转义符(contrl+)可进入内部模式 (3) port-number 端口号:可以理解为服务类型,事实上它指明应用进程;缺省是23。 运行于不同的TCP/IP协议支持的系统都有一个services文件,其中列 出了每个进程的端口号,(4) 启动客户程序例 $telnet 主机名 $telnet 202.112.7.7 IP地址 $telnet 内部命令格式 telnet 内部命令提示符 telnetopen 用内部
10、命令open操作 telnetopen 202.112.7.7 用内部命令open操作 2、输入用户名(User-ID)和口令(Password) login: password: 3、在远程机(服务器)提示符下,本地机(客户机)输入远程系统命令, 如发电子邮件Email,Lynx等。 4、退出连接 完成任务后,退出连接。 在远程系统提示符下键入命令,exit,logout或D,7.2.4 Telnet内部命令 telnet? .commands are: close.关闭当前连接 display.显示操作参数 mode.逐行方式、字符方式 open. 与某机连接 quit退出telnet s
11、end传输特殊字符 set. 置操作参数 status. 显示telnet当前状态 toggle. 触发操作参数 z.挂起telnet ? 显示帮助信息,7.2.5 Telnet的应用及例,远程访问,共享远程系统的资源。 使用远程计算机上的 Internet 信息服务工具, 访问其他Internet信息服务。 借助匿名Telnet,使用户直接连接到Gopher、Archie、 WWW、News等信息服务程序上,访问这些服务。 指定TCP/UDP端口号的远程登录,使用户直接进入一个 相应的应用进程,访问该信息服务。例1、telnet login:bbs例2、telnet login:goph
12、er,7.3 文件传输(FTP) 7.3.1 FTP是什么 FTP是File Transfer Protocol的英文缩写,即“文件传输协议”。 文件从一台机器传送到另一台(上载或下载): 不管他们在何处, 是什么机型, 是何操作系统, 如何连接上网, 只要他们遵循TCP/IP、 FTP协议即可。 上载:Upload Put 下载:Download Get 文件可以是: 文本文件(ASCII), 二进文件(Binary), 压缩、非压缩文件。 通常是需要注册的, 但也有匿名的(Anonymous)。,Software,Program,README,ftp Username:anonymousP
13、assword:,FTP & Anonymous FTP,Anonymous FTP S,7.3.2 FTP工作原理 1、FTP客户程序 接收用户从键盘输入的命令; 分析命令并传送给服务程序请求; 接收并在本地屏幕上显示来自服务程序的信息; 根据命令送或接数据。 2、FTP服务程序 接收并执行客户程序发过来的命令; 与客户程序建立TCP连接; 完成与客户机交换文件的功能; 将执行状态信息返回给客户机。 3、与其他Internet应用不同之处 FTP传输文件时,客户机与服务器之间要建立两次TCP连接(见下图): 控制连接(Control Connection): 客户程序主动与端口为21的FTP
14、服务器连接。 服务程序被动地打开一个FTP的应用端口(21),等待客户程序的FTP连接。 传输TCP命令和服务器回送信息。 数据连接(Data Connection) 二者之间,每传输一个文件,建立一个连接。,FTP客户机与服务器工作原理,文件系统,文件系统,用户接口,用户协议翻译,用户数据传输功能,数据连接,服务器数据传输功能,服务器协议接口,FTP命令和应答,服务器协议接口,用户终端,7.3.3 FTP的主要功能 1、客户机与服务器之间交换一个或多个文件 文件是复制不是移动。 2、能够传输多种类型、多种结构、多种格式的文件 ASCII、Binary两类; 文件(File), 记录(Reco
15、rd)、 页(Page) 文件格式控制和传输模式 3、提供对本地和远程系统的目录操作功能,如改变目录 4、具有对文件改名、显示内容、改变属性、删除之功能 以及其他一些操作 5、具有匿名FTP功能,7.3.4 FTP的必备条件 TCP/IP协议族 ftp 与 ftpd 合法的Userid Password 匿名注册: login:Anonymous password: 7.3.5 FTP的基本命令 1、启动 FTP host 如:%ftp 或 ftpopen username:yhming password:* 或 username:anonymous password:,2、命令 (1)帮
16、助命令组 ftp? 或 ftphelp 列出所有的ftp命令; ftphelp OPEN 将列出open的使用说明。 (2)连接命令组 open host 与远程机连接(用户名和口令) close 结束该连接,不退出ftp disconnect 结束该连接,不退出ftp by 终止所有连接,退出ftp quit 终止所有连接,退出ftp (3)目录操作与列表命令组 ftppwd ftpcd ftpcdup ftplcd,ftpdir remote-dir local-file 将远程指定目录下文件,记入本地文件中 ftpls remote-dir local-file 将远程指定目录下文件,记
17、入本地文件中 ftpmdir remote-file local-file ftpmls remote-file local-file 如 ftpmdir *.txt dirfile 将带后缀txt的文件存于dirfile文件中 ftpnlist remote-dir local-file 将服务器文件以多种排序方式,按时间序(“-rt”),按字符序(“-rc”) 存入本地文件。 如 ftpnlist -rt /disk1/test ltest.txt (4)文件传输命令组 送文件 ftpput local-file remote-file 远程参数缺省,则文件名同本地 ftpsend loc
18、al-file remote-file ftpappend local-file remote-file 取文件 ftpget local-file remote-file 取远程文件名到本地;远程参数缺省,则文件名同本地 ftprecv local-file remote-file recv=get ftpreget local-file remote-file 再从远程取文件,参数同get,文件传输功能图 多文件传输操作 ftpmput local-file 本地多文件送到远程去 ftpmgetremote-file 从远程取多文件到本地 (5)查看文件内容命令组 ftpget filen
19、 - 只显示服务器端文件filen内容, - 代表本地 (6)文件类型操作命令组 type 设置显示传输文件的类型 ascii 设置传输文件的类型为文本文件 binary,image 设置传输文件的类型为二进制文件 (7)文件属性操作命令组 chmod mode remote-file 设置服务器文件权限,权限由mode规定 ftpchmod 666 aa 执行前:-rw-r- l test network 1194-aa 文件主有读写权,同组只有读权 执行后:-rw-rw-rw- l test network 1194-aa 同组、其他用户都有读写权了,FTP Client,FTP Serv
20、er,put mput send append,get reget mget recv,(8)其他 ftprename aa bb delete,mdelete,size, (9)转换操作 ftp! 执行!后,返回本地shell模式,提示符是3% 3%ls-1 执行本地系统命令 3%exit 退出本地系统,返回ftp ftp7.3.6 匿名FTP(anonymous FTP) 匿名FTP Server提供大量有用的软件、程序、各种文档(RFC、README、FAQ) 匿名Server(1993年统计) 1500多台; 共享文件210多万个 匿名FTP Server的主机名一般为ftp.域名
21、.北大 .北大图书馆 .清华 .CERNET 用户名:anonymous 匿名 口令: 电子邮件地址,7.3.7 FTP使用例举 1、UNIX中FTP交互工作 下例左边编号0115 是我们加的。用户的输入部分用加红色斜体有下画线表示。01 ftp 02 Connected to .03 220 FTP server (Version wu-2.5.0(1) Tue Jul 13 10:20:43 CDT.04 Name (:teng): anonymous05 331 Guest login ok, send your complete e-mail address as passwo
22、rd.06 Password: 07 230 Guest login ok, access restrictions apply.08 ftp cd /pub/rfc09 250 CWD command successful.10 ftp get rfc959.txt ftpinfo11 200 PORT command successful.12 150 Opening ASCII mode data connection for rfc959.txt (147316 bytes).13 226 Transfer complete. local: ftpinfo remote: rfc959
23、.txt 151249 bytes received in 2.1 seconds (71.27 Kbytes/s)14 ftp quit15 221-You have transferred 151249 bytes in 1 files. 221-Total traffic for this session was 152964 bytes in 1 transfers. 221-Thank you for using the FTP service on . 221 Goodbye. 图7-3 用户使用FTP的屏幕显示,图中的各行信息的解释如下:01 用户输入FTP命令启动本地FTP客户
24、程序和远地主机北京大学匿名FTP服务器()建立连接。02 本地FTP客户程序显示的连接成功的信息。03 远地服务器返回的信息,“220”表示“服务就绪”。04 本地FTP提示用户输入用户名。输入“anonymous”表示请求匿名FTP服务。05 远地服务器提示“用户名正确”,需要口令。06 本地FTP提示用户输入口令。用户可以输入自己的邮件地址,比如“”。07 服务器返回“230”提示信息,表示用户注册成功。08“ftp”是FTP的命令提示符。用户可以输入相应的命令,如“help”,“dir”等。这里是改变目录“cd”到RFC文件所在的目录。09 远地服务器返回信息,表示改变目录命令已经成功。
25、“CWD”代表“Change Working Directory”。10 用户要求获得名为“rfc959.txt”的文件,并改名为“ftpinfo”。11 远地服务器提示“PORT”信息,表示要建立数据连接。“200”表示命令正确。12 数字“150”表示“文件状态正确,正在建立数据连接,并进行文件传输”。13 数字“226”表示“数据传输完毕,释放数据连接”。14 用户输入退出命令。15 远地服务器表示FTP工作结束。,2、图形界面下的FTP Windows环境下的传输软件很多,用法各异;图形界面下的FTP,简 化了上述命令,并且只要用鼠标点击即可,但基本思路与上述介绍类似。 WS_FTP
26、CuteFTP LeapFTP LeechFTP LeechFTP is a freeware FTP client with some nice features: ? Multithreading for simultaneous transfers !? File and Directory Upload? File and Directory Download?URL Connect and URL Download?URL Snatcher (grabs URLs from Clipboard)?Sanity check for downloaded ZIP and RAR arch
27、ives?Archive viewer for ZIP and RAR?Download of directory trees as TAR archives (if supported by server)?Queue Timer for scheduled transfers?SmartResume: Aborts resume if files differ?Bandwidth Limiting?FTPSearch Interface?HTTP file download User Interface Getting started Keyboard Shortcuts Known Pr
28、oblems,LeapFTP,Fully recursive uploading/downloading/deleting Site Manager Transfer queue Inline remote file editor Download resume Custom commands Proxy support Caching of directory lists Multiple file CHMOD Drag-drop from Windows Explorer DDE allows external control of FTP Moving of remote files A
29、dvanced scripting language Save/print remote file directoriesIn addition, LeapFTP also contains the following options: Anti-Idle keeps connection alive Disconnect Dialup-Networking once transfer has completed System tray minimize Force lowercase filenames Logging of FTP sessions to disk,7.4 电子邮件(Ema
30、il) 7.4.1 概述 电子邮件是人们在Internet上最先使用的服务。 电子邮件系统有它自己的独特之处: 方便性 快捷性 廉价性 7.4.2 工作模式 1、构成 用户代理( UA: User Agent) 又称为邮件阅读器。 编辑、发送、阅读和管理电子邮件。 传输代理( MTA :Message Transfer Agent )又称为邮件服务器。 起“邮局” 作用,接收用户邮件,根据地址传输,传送到接收方的邮件服务器,并将邮件存放在用户邮箱内。 电子邮件工作模式,邮件传输代理MDA/MTA,邮件传输代理MDA/MTA,要发送的邮件队列,要发送的邮件队列,用户代理UA,用户代理UA,Edo
31、raFocMailOutlook,发送者,接收者,Mail Server,Internet,TCP连接,SMTP,POP3,POP3,POP3,POP3,SMTP,Mail Server,2、 邮件服务器之间采用存储转发的工作方式 某个邮件服务器收到一封邮件时,它产生一个副本(存储下来),然后尽可能地将它传送出去(转发)。邮件服务器在下一个邮件服务器确认已经收到它转发的邮件后将副本删去。 邮件服务器之间是通过简单邮件传输协议(SMTP)进行对话 TCP端口号为25。 发送邮件时,邮件阅读器就通过和邮件服务器建立SMTP连接,将编辑好的邮件发给邮件服务器; 读取邮件时,邮件阅读器则和邮件服务器通
32、过建立POP连接,将邮件从邮件服务器上读取到本地计算机上。 POP(Post Office Protocol)是所谓的邮局协议,它是专门开发来适应用户代理和邮件服务器分开这种新的需求的。 在Internet早期,用户代理通常就在邮件服务器上,比如Unix系统上的Mail程序就是用户代理程序之一。当用户要发送或处理邮件时,需要登录到邮件服务器上,运行用户代理程序。 后来人们将邮件阅读器从邮件服务器上独立出来,邮件阅读器可运行在任何其他的计算机上,这样大大方便了用户发送和处理邮件。 目前Internet上最通用的邮件服务器程序为伯克利大学开发的“Sendmail”它可以运行在多种UNIX系统上。,
33、7.4.3 简单邮件传输协议SMTP 简单邮件传输协议SMTP是目前Internet上通用的电子邮件传输协议。 SMTP的特点是非常简单明了,容易实现。 它主要定义了邮件格式以及邮件服务器之间如何通过TCP连接进行邮 件的传输,而并不规定用户界面等其他标准。收发邮件的双方必须都遵 守SMTP协议,否则无法进行邮件的转发。 SMTP协议文档分为两个标准子集: 一个子集定义邮件信息的格式,即RFC822; 另一个子集描述了邮件传输代理之间如何进行邮件的转发,即FC821。 用户代理UA产生的邮件必须符合RFC822定义的格式,否则邮件传输 代理(MTA)不能正确分析所接收的邮件,从而无法投递。 支持SMTP协议的邮件传输代理(MTA)之间采用客户/服务器模式, 连接发起方称为客户,接受方称为服务器。一旦连接建立,邮件传输代 理之间通过SMTP协议进行对话,完成邮件的转发功能。 SMTP定义了非常简单的几个命令用来进行邮件的发送,其中包括 HELO,MAIL FROM,RCPT TO,DATA和QUIT。 另外还有3个命令VERY,RESET,NOOP用于对邮件传输进行一定的控制。,