文件传输协议 FTP的两种连接
当进行文件传输时,FTP的客户和服务器之间要建立两个并行的TCP连接
- 控制连接
- 数据连接
应用程序的体系结构
C/S结构体系:简单的,C/S结构体系是一种软件系统。网络上软件系统大致可以分为B/S和C/S结构的。可以从以下两个层次面认识: 小型系统:使用的C/S系统,基本只是简单的读取数据库,显示到前台而已。一般也就分为两层:服务器端、客户端,所实现的也是胖客户端。服务器上也就只是运行数据库而已。
P2P
万维网WWW
- 万维网WWW并非某种特殊的计算机网络。它是大规模的、联机式的信息储藏所,是运行在因特网上的一个分布式应用。
- 万维网利用页面之间的超链接将不同网站的网页链接成一张逻辑上的信息网。
URL格式
为了方便地访问世界范围的文档,万维网使用统一资源定位符URL来指明因特网上任何种类“资源”的位置。
URL的一般形式由以下四个部分组成:
超文本传输协议HTTP
HTTP定义了浏览器(即万维网客户进程)怎样向万维网服务器请求万维网文档,以及万维网服务器怎样把万维网文档传送给浏览器
HTTP/1.0采用非持续连接方式。在该方式下,每次浏览器要请求一个文件都要与服务器建立TCP连接,当收到响应后就立即关闭连接。
- 每请求一个文档就要有两倍的RTT的开销。若一个网页上有很多引用对象(例如图片等),那么请求每一个对象都需要花费2RTT的时间
- 为了减少时延,浏览器通常会建立多个并行的TCP连接同时请求多个对象。但是,这会大量占用万维网服务器的资源,特别是万维网服务器往往要同时服务于大量客服的请求,这会使其负担很重
HTTP/1.1采用持续连接方式。在该方式下,万维网服务器在发送响应后仍然保持这条连接,使同一个客户(浏览器)和该服务器可以继续在这条连接上传送后续的HTTP请求报文和响应报文。这并不局限于传送同一个页面上引用的对象,而是只要这些文档都在同一个服务器上就行。
- 为了进一步提高效率,HTTP/1.1的持续连接还可以使用流水线方式工作,即浏览器在收到HTTP的响应报文之前就能够连续发送多个请求报文。这样的一个接一个的请求报文到达服务器后,服务器就发回一个接一个的响应报文。这样就节省了很多个RTT时间,使TCP连接中的空闲时间减少,提高了下载文档的效率。
非持续连接跟持续连接的区别:
- 一种是当发出请求连接后,传输一个文件后就立即断开连接。
- 一种是当发出连接请求后,可以持续的传输后续的文件。不用每传输一个就断开一次。
HTTP的报文格式
HTTP是面向文本的,其报文中的每一个字段都是ASCII码串,并且每个字段的长度都是不确定的