




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第17章应用层协议要求:1.了解FTP特点2.掌握FTP模型3.了解HTML语言4.掌握HTTP客户端和服务器的七种交互方式5.了解WinInet适用的应用层协议6.掌握POP3、SMTP、MIME在电子邮件系统中发挥的作用7.掌握电子邮件系统的三个关键部件8.了解Finger和Whois的功能及使用方法17.1FTP——文件传输协议一.异构机器间文件共享需要解决的问题
1.访问授权问题
2.不同机器之间文件数据的格式转换问题二.FTP:TCP/IP主要的文件传输协议1.特点
①
交互访问:提供了交互接口,使得用户更容易与远程系统交互;②
格式规范:允许用户指定存储数据的类型和格式;③
访问控制:利用用户名和口令实施访问控制。说明:FTP也允许匿名访问,也就是说客户不需要帐号或者口令。
2.FTP模型①协议模型——客户端/服务器模型服务器端打开21号端口,等待客户端的服务请求。FTP服务器允许多个客户端的并发访问。②进程模型服务器进程:
a.主服务器进程:等待客户端连接,并为每个连接请求建立控制从进程。
b.控制连接从进程:接收和处理来自客户的控制连接。
c.数据传输从进程:一个或多个,处理数据传输。
客户端进程:
a.控制连接进程。
b.数据传输进程。
③两类连接
a.控制连接:使用TCP,传输控制命令,在整个会话期间保持不变。
b.数据连接:使用TCP,传输所有数据,可临时动态创建。客户系统操作系统控制进程数据传输服务器系统操作系统数据传输控制进程TCP/IP互联网控制连接数据连接④端口号分配服务器端:主服务器进程+控制连接从进程:21号端口;数据传输从进程:20号端口;客户端:控制连接:操作系统分配;数据连接:操作系统分配,并利用控制连接,将该端口号通告给服务器。⑤FTP控制报文和差错报文格式:3个数字开始,后跟文本,说明控制和差错状态。例:221、226。530:NotLoggedin,…
⑥
FTP命令示例C:\DocumentsandSettings\koukou>ftpConnectedto.220-ftp.zzu服务器已准备就绪220-这里是ZZJ工作室的ftp站点.220-现在是Tuesday13April,200410:57:55.220-欢迎来自28的网友.220-本服务器已连续运行了16天1时36分.220-当前在线343人.220-自启动后共接待446305人次访问.220-上传数据895K.220下载数据10659528434K.
User(:(none)):anonymous331Usernameokay,pleasesendcompleteE-mailaddressaspassword.Password:230-这里是ZZJ工作室的ftp站点.230-现在是Tuesday13April,200410:58:21.230-欢迎来自28的网友.230-本服务器已连续运行了16天1时36分.230-当前在线347人.230-自启动后共接待446315人次访问.230-上传数据895K.230-下载数据10659810534K.230Userloggedin,proceed.
ftp>dir200PORTCommandsuccessful.150OpeningASCIImodedataconnectionfor/bin/ls.drw-rw-rw-1usergroup0Feb2315:12.drw-rw-rw-1usergroup0Feb2315:12..drw-rw-rw-1usergroup0Mar516:38电子书籍drw-rw-rw-1usergroup0Mar516:54软件大全drw-rw-rw-1usergroup0Mar2809:42上载区(暂停上载)-rw-rw-rw-1usergroup251Apr262002声明.txtdrw-rw-rw-1usergroup0Mar1709:40音频资料226Transfercomplete.ftp:454bytesreceivedin0.00Seconds454000.00Kbytes/sec.
ftp>quit221再见朋友,您本次连线时间1分钟,共上传了0K的数据,下载了0K的数据.欢迎您再来.
17.2HTTP——用于WWW的超文本传输协议
一.WWW历史
1.1989年欧洲粒子物理实验室CERN开发。
2.1989年3月,CERN物理学家TimBerners-Lee提出WWW计划;
3.18个月后,第一个原型运行;
4.1991年12月,在德克萨斯州的SanAntonion91超文本会议上第一次公开演示;
5.1993年,第一个图形界面的Mosaic发布,发展达到高潮;
6.1994年,Mosaic离开NSCA(国家超级计算应用中心nationalcenterforsupercomputingapplication),创建了Netscap公司;
7.1994年,CERN和麻省理工学院签定协议建立万维网集团,致力于进一步发展信息网,标准化协议并鼓励站点间的互操作性,主页;
8.目前已经成为Internet上使用最为广泛的应用,也成了推动互连网飞速发展的动力。TimBerners-Lee:“万维网之父”二.WWW的组成部分1.web组成是大量Web页面组成。每个Web页面被归类为一个超媒体(hypermedia)文档。hyper+mediahyper:文档可以包含指向其它相关文档的可选择链接;media:文档可包含文本+图形+音频+视频。2.使用WebWeb浏览器:用户调用的应用程序,通过该程序访问和显示Web页(IE,Netscap);Web服务器:包含多个Web页,供用户访问。3.Web页表示方式——HTML页面组成:头部+主体页面标识:<HTML>和</HTML>头部标识:<HEAD>和</HEAD>主体标识:<BODY>和</BODY>4.Web页的名称——URL功能:为每个页面命名,唯一地标识该页。形式:http://hostname[:port]/path[;parameters][?query]组成:协议:http,指明使用的协议类型,可以是HTTP、FTP…;服务器地址(端口):hostname[:port],指明服务器的地址和端口,此处端口可选,且不一定是80;页面路径:标识页面在服务器上的位置;可选项:parameters指定由用户提供的可选参数;query是浏览器发送查询请求时发送的可选字符串。常用的形式:/c/2004-04-4/10553126043.shtml5.Web页示例<HTML>Theauthorofthistextis<AHREF=“http:///people/comer”>DouglasComer.</A></HTML>使用浏览器看到的形式:TheauthorofthistextisDouglasComer.三.超文本传输协议——HTTP用途:浏览器和Web服务器之间的通信的协议1.特点①应用层协议,使用TCP;②请求/响应(Request/Response)③无状态(Stateless)④双向传输(Bi-DirectionalTransfer)⑤协商能力(CapabilityNegotiation)⑥支持高速缓存(SupportForCaching)⑦支持中介(SupportForIntermediaries)2.HTTP请求方法
说明:HEAD:用于信息搜集和测试URL的有效性;POST:带有URL,向服务器上载数据,但是不替换现有的数据,通常把新的数据附加在现有数据的后面。方法描述GET请求读一Web网页HEAD请求读一Web页面头PUT请求存储一Web网页POST附加一个命名的资源DELETE删除一个Web网页LINK连接两个已有的资源UNLINK切断两个已有资源间的连接4.持久连接和长度①早期请求服务器数据的方法每个数据传输都使用新的TCP连接:客户打开TCP连接,发送GET请求;服务器传送请求的项目副本,然后关闭连接。缺点:开销大。②持久连接一旦客户打开了和特定服务器的连接,客户就让该连接在多个请求和响应过程中一直存在。当客户准备关闭连接时,通知另一端,然后关闭连接。③改进措施使用流水线技术(pipelining:逐个地连续地发请求,不必等待响应)。问题:如何划分多次传输的项目?解决:先发送数据的长度,再发送具有该长度的数据项。问题:若服务器事先不知道数据的长度怎么办?
解决:服务器通知浏览器,在传递完项目后关闭连接。
④长度编码和首部问题:如何发送长度信息?格式:每个HTTP传送包含一个首部,一个空行和要发送的数据项。常用首部以及含义含义数据大小,字节表示数据类型数据使用的编码方式首部Content-LengthContent-TypeContent-EncodeingContent-Language数据使用的语言5.协商协商的双方:浏览器和服务器;协商的内容:有关连接、表示法、内容以及控制等方面的各种能力。协商的方式:①服务器驱动(server-driven)
a.浏览器首先发出请求,指定首选列表以及要求的数据项的URL;
b.服务器从可用的表示法中选出符合浏览器首选要求的一项;
c.如果有多项符合条件,则服务器进行“最好的猜测”。②代理驱动(agent-driven,等同于浏览器驱动)
a.浏览器向服务器发送请求;
b.服务器返回可能的内容列表;
c.浏览器选择其中一个可能项,发送第二个请求获得该数据项。
例如:浏览器使用HTTPAccept首部指定哪种媒体或表示法是可以接受的。首部列出格式的名称以及分配给每个名称的首选值。Accept:text/HTML,text/plain;q=0.5,text/x-dvi;q=0.8q=num:表示优先级,默认为‘1’,不接受为‘0’服务器选择步骤:
a.
服务器希望接受text/html媒体类型;
b.
若text/html类型不存在,则接受text/x-dvi;
c.
若text/x-dvi不存在,则接受text/plain。6.条件请求浏览器发送的请求头部中可以写入需求,服务器把满足需求的资源返回给浏览器。例如:If-Modified-Since:Sat,01Jan200005:00:01GMT避免传输过时数据,如果数据比2000.1.1早,则不进行传输。7.代理服务器作用:优化的机制,降低等待时间并减少服务器的负担。特性:不透明,必须配置代理服务器。实现:缓存Web页副本。第一次访问Web页时将Web页缓存在本地。浏览器以后再访问该页面时直接从缓存中读该页给浏览器,而不必再次访问服务器。8.高速缓存核心问题:缓存时间。缓存的主体:浏览器和代理服务器都可以缓存。控制方式:①服务器控制高速缓存的细节,包括该页能否全部缓存,代理服务器是否可以高速缓存该页,哪些人可以共享高速缓存的页面,高速缓存副本的到期时间;
②浏览器控制,通过请求首部中设置最长的“寿命”(自从存储Web页副本以来的时间)不能大于0,强制刷新Web页面。(因为副本的寿命大于‘0’)。四.应用层程序设计——WinInet作用:提供了更高层的抽象,不必了解应用层协议的细节。可以利用它编写FTP、HTTP、Gopher的客户端程序。17.3电子邮件系统SMTP(SimpleMailTransferProtocol):
简单邮件传送协议——RFC821,用于邮件发送。POP3(PostOfficeProtocol):
邮局协议——RFC1225,用于邮件读取。IMAP(InteractiveMailAccess):
交互式电子邮件访问协议——RFC1064,用于邮件读取。MIME(MultipurposeInternetMailExtension):
多用途Internet邮件扩充——RFC2045-2049,以上邮件传输协议的扩充。一.电子邮件系统的主要组成构件1.用户代理2.邮件服务器3.邮件传输协议发送邮件SMTP读取邮件POP3或IMAP发送邮件SMTP用户代理邮件服务器用户代理邮件缓存邮件缓存邮件服务器1.用户代理(UserAgent-UA):用户与电子邮件系统的接口。(1)撰写功能(2)显示功能(3)处理功能2.邮件服务器需要同时运行至少两个邮件传输协议(1)发送邮件协议(SMTP)(2)读取邮件协议(POP3、IMAP…)1.发信人调用用户代理来编辑要发送的邮件;2.用户代理用SMTP将邮件传送给发送端邮件服务器;3.发送端邮件服务器将邮件放入邮件缓存队列中,等待发送;4.运行在发送端邮件服务器的SMTP客户进程发现在邮件缓存中有待发送的邮件,就向运行在接收邮件服务器的SMTP服务器进程发起TCP连接;5.TCP连接一旦建立,SMTP客户进程就向远程SMTP进程发送邮件;6.运行在接收端邮件服务器中的SMTP服务器进程收到邮件后,将邮件放入收信人的用户邮箱中,等待收信人在其方便时读取;7.收信人在打算收信时,调用用户代理,使用POP3(或IMAP)协议将自己的邮件从接收端邮件服务器的用户邮箱中取回。二.一封电子邮件的发送和接收过程名称@域名例:kxr@263.net要求:唯一性三.邮箱地址格式信封+首部+(空行)+正文信封:邮件服务器根据SMTPRCPTTO命令生成。首部:关键字+“:”+参数To:
收件人的电子邮件地址Cc(Carboncopy):
抄送Bcc(Blindcarboncopy):
暗送From:
撰写邮件的人名Sender:
发件人的电邮地址Date:
发送邮件的日期和时间Reply-To:
回信应发送的电子邮件地址Subject:
邮件主题四.邮件格式(RFC822)发信人:kouxiaorui@收信人:lijun@主题:Example内容:Happynewyear!信封:(1)MAILFrom:<kouxiaorui@>(2)RCPTTo:<lijun@>例:(3)Received:by.(4.1/SMI-4.1)idAA00502;Mon,1Jan0600:00:01MST(4)Message-Id:<060101123.AA00502@.>(5)From:kouxiaorui@(kouxiaorui)(6)Date:Mon,1Jan0600:00:01-0600(7)Reply-To:kouxiaorui@(8)X-Phone:+863716761676(9)X-Mailer:MailUser’sShell(10)To:lijun@(11)Subject:Example
(12)
首部:正文:(13)Happynewyear!问题:1.不能传送可执行文件或其它二进制对象;2.限于传送7位ASCII码;3.SMTP服务器会拒绝超过一定长度的邮件;解决:MIME意义:没有取代SMTP,继续使用RFC822增加了邮件主体结构,定义了传送非ASCII码的编码规则。五.MIMEMIMEMIME7位ASCII码7位ASCII码用户用户SMTPSMTP非ASCII码非ASCII码7位ASCII码1.5个新的邮件首部字端,提供了有关邮件主体的信息;2.定义了许多邮件内容的格式,对多媒体电子邮件的表示方法进行了标准化;3.定义了传送编码,可对任何内容格式进行转换,而不会被邮件系统改变。五.MIME—内容5个新首部字段MIME-Version:MIME版本(1.0)Content-Description:内容描述Content-ID:邮件唯一标识符Content-Transfer-Encoding:邮件主体的编码方式Content-Type:邮件的性质1.ASCII:每行不超过1000个字符;2.Quote-printable:适用于所传送的数据种只有少量非ASCII码;3.base64:任意的二进制文件。五.MIME内容传送编码(Content-Transfer-Encoding)Quote-printable:例:“系统”-1011111110100101101111001010001116进制表示:CFB5CDB3Quote-printable表示:=
CF=B5=CD=B3开销:32bit96bit说明:“=”的Quote-printable表示:=3Dbase64:例:010010010011000101111001010010010011000101111001STF501010011010101000100011000110101开销:24bit32bit格式:Content-Type:类型+子类型7个类型和15个子类型MIME—内容类型(Content-Type)From:kxr@To:wang@MIME-Version:1.0Content-Type:multipart/mixed;boundary=bond--bondWang:
送你一个图片,祝开心
kxr--bondContent-Type:image/gifContent-Transfer-Encoding:base64…图片数据--bond--MIME表示的邮件实例传输层协议:TCP知名端口:25模型:客户机/服务器规定:两个相互通信的SMTP进程之间如何交换信息没有规定的内容:
邮件内部的格式邮件如何存储邮件系统应该以多快的速度来发送邮件主要内容:14条命令+21种应答信息命令格式:4字母开始+参数应答格式:3位数字开始+简单文字说明六.SMTP—概述1.连接建立(1)
SMTP定期扫描邮件缓存,若有邮件,则与目的主机SMTP服务器25号端口建立TCP连接;(2)连接建立后,SMTP服务器发出“220Serviceready”;(3)SMTP客户向SMTP服务器发送“HELO”命令;(4)若服务器可用,则回答:“250OK”;若服务器不可用,则回答:“421Servicenotavailable”;说明:1.若在一定时间内发不了邮件,则把邮件退还给发信人2.上述连接的两端是发送主机的SMTP客户和接收主机的SMTP服务器。SMTP—主要命令和应答2.邮件传送(1)客户端发送MAIL命令,加入发信人地址;(2)若SMTP服务器已经准备好接收邮件,则回答“250OK”,否则返回错误代码;(3)客户端发送一个或多个RCPT命令,加入收件人邮件地址;(4)若目标无误,则服务器返回“250OK”,否则返回“550Nosuchuserhere”;(5)客户端发送一个DATA命令,表示要开始传送邮件的内容了;(6)服务器端返回信息“354Startmailinput;endwith<CRLF>.<CRLF>”;(7)若服务器不能接收邮件,则返回“421服务不可用”,否则返回“500命令无法识别”;(8)客户邮件发送完毕后,发送<CRLF>.<CRLF>,表示邮件结束;(9)若服务器收到邮件,则服务器返回“250OK”。3.连接释放(1)SMTP客户发送QUIT命令;(2)SMTP服务器返回“221服务关闭”;(3)TCP连接释放;C—客户,S—服务器客户:;服务器:S:220SimpleTransferServiceReadyC:HELOS:250C:MAILFROM:<kxr@>S:250OKC:RCPTTO:<wang@>S:250OKC:RCPTTP:<li@>S:550NosuchuserhereC:DATAS:354Startmailinput;endwith<CR><LF>.<CR><LF>C:…sendsbodyofmailmessage…C:…continuesforasmanylinesasmessagecontainsC:<CR><LF>.<CR><LF>S:250OKC:QUITS:221ServiceclosingtransmissionchannelSMTP—主要命令和应答—实例传输层协议:TCP知名端口:110工作模型:客户机/服务器交互方式:命令+应答命令格式:命令+参数+<CR><LF><CR><LF>应答格式:状态码
+简单文字说明+<CR><LF><CR><LF>状态码:“+OK”or“-ERR”特点:用户只要从POP服务器读取了邮件,POP服务器就将该邮件删除。状态:1.认可态2.处理态3.更新态七.邮件读取协议POP31.认可态
USER
username
用户名
PASS
password
口令
APOPName,Digest
用户名和摘要2.处理态STAT请求邮箱的统计资料UIDL[Msg#]
返回邮件的唯一标识LIST
[Msg#]
返回邮件数量和每个邮件的大小RETR[Msg#]
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海市市八中学2024-2025学年高三3月11的生物试题测试卷含解析
- 南阳理工学院《检验仪器学》2023-2024学年第一学期期末试卷
- 四川省成都市金堂县重点中学2024-2025学年初三全真英语试题模拟试卷(4)含答案
- 烟台理工学院《医药大数据处理技术》2023-2024学年第一学期期末试卷
- 部编版语文八年级上册第11课《短文二篇》课件
- 江苏省江阴市长泾二中学2025年中考语文试题一轮复习高中总复习含解析
- 山东工业职业学院《微电子专业英语》2023-2024学年第二学期期末试卷
- 西安文理学院《概率论与数理统计B》2023-2024学年第二学期期末试卷
- 营口市盖州市2025年三年级数学第二学期期末学业水平测试模拟试题含解析
- 湖南税务高等专科学校《少儿体操与健美操》2023-2024学年第二学期期末试卷
- 油性油墨分析报告
- 公路物流运输项目整体服务投标方案(技术标)
- 成人体验馆管理制度
- 慢性鼻窦炎的中医护理查房课件
- 升压站检测、试验项目计划(改)01
- 工程招标代理服务投标方案(技术方案)
- asme第ⅸ卷焊接工艺评定,焊工技能评定-77
- 商法-商法课件
- 《秋兴八首(其一)》杜甫
- 新时代高职英语(基础模块)2 Unit7
- 胸外科肺癌“一病一品”落实汇报
评论
0/150
提交评论