1、应用层的概念应用层是计算机网络体系结构的最顶层是设计和建立计算机网络的最终目的也是计算机网络中发展最快的部分。1.1、应用层协议的定义在不同端系统上应用程序是如何相互传输报文的。应用层协议规定以下内容交换的报文类型交换的是请求报文还是相应报文报文字段的解释对报文中个字段的详细描述报文字段的语义报文个字段1的含义是什么报文交换时间、方式程序何时、以什么方式发送报文以及响应2、体系结构定义了应用层端系统之间数据交换的方式开发一种新的网络应用要首先考虑的问题是网络应用程序在各种端系统上的组织方式和它们之间的关系一般来说主流的体系结构有两种客户-服务器体系结构client-server architecture对等体系结构P2P2.1、客户/服务器方式分为请求方和服务方总是打开主机称为服务端它向客户端提供服务。客户端会发送请求给服务端服务端会根据客户端的请求作出响应。特点客户和服务器是指通信中所涉及的两个应用进程客户/服务器方式所描述的是进程之间的服务与被服务的关系客户是服务器请求方服务器是服务提供方服务器总是处于运行状态并等待客户的服务请求客户 - 服务器模式通常会出现随着客户数量的急剧增加导致单台服务器无法满足⼤量请求的情况。 为此通常需要配备⼤量的数据中心(data center) 用来跟踪所有的用户请求。2.2、点对点方式在P2P中没有固定的服务请求者和服务提供者分布在网络边缘各端系统中的应用进程是对等的被称为对等方。对等双方相互之间直接通信每个对等方既是服务请求方也是服务提供方。P2P最大的特点就是扩展性因为P2P网络的一个重要目标就是让所有的客户端都能提供资源、获取资源、共享资源、存储空间等。3、万维网3.1、概述万维网www并非某种特殊的计算机网络。它是一个大规模的、联机式的信息储藏所是运行在因特网上的一个分布式应用。万维网利用网页之间的超链接将不同网站的网页链接成一个逻辑上的信息网。万维网是将互联网中的信息以超文本的形式展示的系统用来显示WWW结果的客户端称为Web浏览器。通过浏览器我们无需关注想要访问的内容在呢过服务器上我们只需要知道我们想访问的内容就可以了。WWW定义了三个比较重要的概念URI定义了访问信息的手段和位置文档规范HTTP定义了WWW的访问规范3.2、统一资源定位符URL和标识符URIURI能够唯一的标记互联网上资源URL俗称网址它实际上是URI的一个子集UPI包括URL和RUN统一资源名称URL的一般形式协议://主机:端口/路径3.3、万维网文档3.3.1、HTML超文本标记语言使用多种“标签”来描述网页的结构和内容。HTML包括一系列标签通过这些标签可以将网络上的文档格式统一使分散的Internet资源链接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本HTML命令可以说明文字图形动画声音表格链接等。3.3.2、CSS层叠样式表CSS从审美的角度来描述网页的样式.pink{color:deeppink;/* 文字颜色深粉色 */font-size:36px;/* 文字大小36像素很大的字 */}4、 HTTPWeb的应用层协议就是HTTP超文本传输协议它是Web的核心协议是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范。4.1、HTTP连接行为4.1.1、HTTPHTTP/1.0 采用非持续连接每请求一个文件都要新建、断开 TCP 连接单次请求耗时 2RTT网页多资源时时延很高。浏览器多并行连接虽能提速但会加重服务器负担。HTTP/1.1 引入持续连接响应后保留 TCP 连接同一客户端可复用连接请求同服务器下的所有资源。在此基础上还支持流水线机制浏览器可未收到响应就连续发送多个请求进一步减少 RTT、提升传输效率。4.2、HTTP报文格式HTTP 协议主要由三⼤部分组成起始行描述请求或响应的基本信息头部字段使用Key-value形式更详细地说明报文消息正文实际传输的书籍它不一定是纯文本可以是图片、视频等二进制数据4.3、HTTP协议特征支持客户-服务器模式简单快速、灵活、无连接、无状态4.4、cookile和sessionSession 和 Cookie 的主要⽬的就是为了弥补 HTTP 的⽆状态特性。4.4.1、cookiesHTTP 协议中的 Cookie 包括 Web Cookie 和浏览器 Cookie它是服务器发送到 Web 浏览器的⼀⼩块数据。服务器发送到浏览器的 Cookie浏览器会进⾏存储并与下⼀个请求⼀起发送到服务器。Cookie 主要⽤于下⾯三个⽬的会话管理登陆、购物车、游戏得分或者服务器应该记住的其他内容个性化用户偏好主题或者其他设置追踪记录和分析用户行为4.4.2、session客户端请求服务端服务端会为这次请求开辟⼀块内存空间这个对象便是 Session 对象存储结构是⼀个 Map 映射具体⼀点是 ConcurrentHashMap。Session 弥补了 HTTP ⽆状态特性服务器可以利⽤ Session 存储客户端在同⼀个会话期间的⼀些操作记录。4.5、Web缓存万维网缓存又称为Web缓存可位于客户机也可位于中间系统上位于中间系统上的Web缓存又称为代理服务器它是代表 HTTP 服务器来满足用户需求的网络实体。
计算机网络之应用层(HTTP)
1、应用层的概念应用层是计算机网络体系结构的最顶层是设计和建立计算机网络的最终目的也是计算机网络中发展最快的部分。1.1、应用层协议的定义在不同端系统上应用程序是如何相互传输报文的。应用层协议规定以下内容交换的报文类型交换的是请求报文还是相应报文报文字段的解释对报文中个字段的详细描述报文字段的语义报文个字段1的含义是什么报文交换时间、方式程序何时、以什么方式发送报文以及响应2、体系结构定义了应用层端系统之间数据交换的方式开发一种新的网络应用要首先考虑的问题是网络应用程序在各种端系统上的组织方式和它们之间的关系一般来说主流的体系结构有两种客户-服务器体系结构client-server architecture对等体系结构P2P2.1、客户/服务器方式分为请求方和服务方总是打开主机称为服务端它向客户端提供服务。客户端会发送请求给服务端服务端会根据客户端的请求作出响应。特点客户和服务器是指通信中所涉及的两个应用进程客户/服务器方式所描述的是进程之间的服务与被服务的关系客户是服务器请求方服务器是服务提供方服务器总是处于运行状态并等待客户的服务请求客户 - 服务器模式通常会出现随着客户数量的急剧增加导致单台服务器无法满足⼤量请求的情况。 为此通常需要配备⼤量的数据中心(data center) 用来跟踪所有的用户请求。2.2、点对点方式在P2P中没有固定的服务请求者和服务提供者分布在网络边缘各端系统中的应用进程是对等的被称为对等方。对等双方相互之间直接通信每个对等方既是服务请求方也是服务提供方。P2P最大的特点就是扩展性因为P2P网络的一个重要目标就是让所有的客户端都能提供资源、获取资源、共享资源、存储空间等。3、万维网3.1、概述万维网www并非某种特殊的计算机网络。它是一个大规模的、联机式的信息储藏所是运行在因特网上的一个分布式应用。万维网利用网页之间的超链接将不同网站的网页链接成一个逻辑上的信息网。万维网是将互联网中的信息以超文本的形式展示的系统用来显示WWW结果的客户端称为Web浏览器。通过浏览器我们无需关注想要访问的内容在呢过服务器上我们只需要知道我们想访问的内容就可以了。WWW定义了三个比较重要的概念URI定义了访问信息的手段和位置文档规范HTTP定义了WWW的访问规范3.2、统一资源定位符URL和标识符URIURI能够唯一的标记互联网上资源URL俗称网址它实际上是URI的一个子集UPI包括URL和RUN统一资源名称URL的一般形式协议://主机:端口/路径3.3、万维网文档3.3.1、HTML超文本标记语言使用多种“标签”来描述网页的结构和内容。HTML包括一系列标签通过这些标签可以将网络上的文档格式统一使分散的Internet资源链接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本HTML命令可以说明文字图形动画声音表格链接等。3.3.2、CSS层叠样式表CSS从审美的角度来描述网页的样式.pink{color:deeppink;/* 文字颜色深粉色 */font-size:36px;/* 文字大小36像素很大的字 */}4、 HTTPWeb的应用层协议就是HTTP超文本传输协议它是Web的核心协议是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范。4.1、HTTP连接行为4.1.1、HTTPHTTP/1.0 采用非持续连接每请求一个文件都要新建、断开 TCP 连接单次请求耗时 2RTT网页多资源时时延很高。浏览器多并行连接虽能提速但会加重服务器负担。HTTP/1.1 引入持续连接响应后保留 TCP 连接同一客户端可复用连接请求同服务器下的所有资源。在此基础上还支持流水线机制浏览器可未收到响应就连续发送多个请求进一步减少 RTT、提升传输效率。4.2、HTTP报文格式HTTP 协议主要由三⼤部分组成起始行描述请求或响应的基本信息头部字段使用Key-value形式更详细地说明报文消息正文实际传输的书籍它不一定是纯文本可以是图片、视频等二进制数据4.3、HTTP协议特征支持客户-服务器模式简单快速、灵活、无连接、无状态4.4、cookile和sessionSession 和 Cookie 的主要⽬的就是为了弥补 HTTP 的⽆状态特性。4.4.1、cookiesHTTP 协议中的 Cookie 包括 Web Cookie 和浏览器 Cookie它是服务器发送到 Web 浏览器的⼀⼩块数据。服务器发送到浏览器的 Cookie浏览器会进⾏存储并与下⼀个请求⼀起发送到服务器。Cookie 主要⽤于下⾯三个⽬的会话管理登陆、购物车、游戏得分或者服务器应该记住的其他内容个性化用户偏好主题或者其他设置追踪记录和分析用户行为4.4.2、session客户端请求服务端服务端会为这次请求开辟⼀块内存空间这个对象便是 Session 对象存储结构是⼀个 Map 映射具体⼀点是 ConcurrentHashMap。Session 弥补了 HTTP ⽆状态特性服务器可以利⽤ Session 存储客户端在同⼀个会话期间的⼀些操作记录。4.5、Web缓存万维网缓存又称为Web缓存可位于客户机也可位于中间系统上位于中间系统上的Web缓存又称为代理服务器它是代表 HTTP 服务器来满足用户需求的网络实体。