第二章 应用层

2.1 应用层协议原理

2.1.1 网络应用程序体系结构

1.应用程序体系结构规定了如何在各种端系统上组织该应用程序。主要分为:客户-服务器体系结构和对等P2P体系结构

2.客户-服务器体系结构。服务器:总是打开、永久的IP地址以及是数据中心,客户端:间断地连接、可能有动态的IP地址、不直接和其他客户直接通信

3.P2P体系结构:任意端系统直接通信、接受服务同时提供服务、自扩展性(新的对等方带来了新的服务需求和服务器容量)。挑战有ISP友好、安全性和激励。

2.1.2 进程通信

1.客户和服务器进程。通常将通信的两个进程一个称为服务器(等待联系的),一个称为客户(发起通信的)

2.进程与计算机网络之间的接口。进程通过一个称为套接字socket的软件接口向网络发送报文和从网络接收报文,是应用层和运输层之间的接口


socket

3.进程寻址:IP地址+端口号

2.1.3 可供应用程序使用的运输服务

1.可靠的数据传输

2.吞吐量

3.定时

4.安全性

2.1.4 因特网提供的运输服务

1.TCP服务:(1)面向连接的服务(2)可靠的数据传送服务(3)拥塞控制

2.UDP服务

3.因特网运输协议所不能提供的服务:吞吐量或定时保证

2.1.5 应用层协议

应用层协议定义了运行在不同端系统上的应用程序进程如何相互传递报文。定义了交换的报文类型、报文语法、报文语义、规则。可以分为开放协议和专有协议

2.2 Web和HTTP

2.2.1 HTTP概况

1.web的应用层协议是超文本传输协议HTTP,由两个程序实现,一个客户程序和一个服务器程序

2.Web页面由对象组成,一个对象是一个文件。Web服务器实现了HTTP的服务器端,它用于存储Web对象,每个对象由URL寻址

3.HTTP定义了Web客户向Web服务器请求Web页面的方式,以及服务器向客户传送Web页面的方式。HTTP使用TCP作为它的支撑运输协议,端口号为80。

4.HTTP是一个无状态的协议

2.2.2 非持续连接和持续连接

非持续连接

1.使用非持续连接的HTTP,一次传送一个请求报文和一个相应报文

2.往返时间RTT,指一个短分组从客户到服务器然后再返回客户所花费的时间。

3.三次握手,总的响应时间就是两个RTT加上服务器传输HTML文件的时间

持续连接

1.非持续连接存在的问题:(1)给Web服务器带来了严重的负担(2)每个对象要经受两倍的RTT交付时延

2.2.3 HTTP报文格式

1.HTTP请求报文


一个HTTP请求报文的通用格式

2.上传表单的输入:POST方法(表单在网页里)和URL方法(表单在URL文件里)

3.方法类型 HTTP/1.0:GET POST HEAD(要求服务器将响应的对象排除在响应之外)

                  HTTP/1.1:GET POST HEAD PUT DELETE

4.HTTP响应报文,第一行变为状态行

2.2.4 用户与服务器的交互:cookie

1.cookie技术的4个组件:(1)在HTTP响应报文中的一个cookie首部行(2)在HTTP请求报文中的一个cookie首部行(3)客户端,由浏览器管理(4)Web站点的一个后端数据库

2.cookie可以用于标识一个用户

2.2.5 Web缓存

1.Web缓存器也叫代理服务器

2.Web缓存器可以(1)大大减少对客户请求的响应时间(2)减少一个机构的接入链路到因特网的通信量(3)整体上大大减低因特网上的Web流量,从而改善了所有应用的性能。

2.2.6 条件GET方法

1.GET机制允许缓存器证实它的对象是最新的

2.请求报文使用GET方法,并且请求报文中包含一个“If-Modified-Since”首部行

2.3 文件传输协议:FTP

1.从远程主机传输文件,端口号为21,运行在TCP上。

2.使用两个并行的TCP来传输文件,一个是控制连接,一个是数据连接。带外。控制连接是贯穿的,数据连接是一个文件一个

3.FTP服务器必须在整个会话期间保留用户的状态。

2.4 因特网中的电子邮件

1.电子邮件系统的三个主要成分:(1)客户代理user agents(2)邮件服务器mail server和简单邮件传输协议STMP。用户在邮件服务器上有一个邮箱

2.4.1 SMTP

1.两个服务器直接相连,不使用中间服务器,端口号25,TCP,必须是7位ASCII

2.SMTP使用持久连接

2.4.2 与HTTP的对比

1.HTTP是pull,SMTP是push

2.都有ASCII命令,响应交互和状态代码

3.HTTP的每个对象封装在它的响应报文里,SMTP是多个对象放在多个报文里

2.4.3 邮件报文格式和NIME


邮件报文格式

2.4.4 邮件访问协议


电子邮件协议及其通信实体

1.POP3。端口110。分为三个阶段:特许、事务处理以及更新。下载并保存和下载并删除,会话过程中无状态。

2.IMAP。将所有邮件保存在服务器上,允许用户组织文件夹中的文件,保持会话之间的用户状态

2.5 DNS:因特网的目录服务

2.5.1 DNS提供的服务

1.域名系统DNS的主要任务能进行主机名到IP地址转换的目录服务。DNS是(1)一个由分层的DNS服务器实现的分布式数据库(2)一个使得主机能够查询分布式数据库的应用层协议。DNS运行在UDP之上,端口号为53

2.主机别名

3.邮件服务器别名

4.负载分配,许多IP地址对应了一个名称

2.5.2 DNS工作机理概述

1.集中式DNS存在的问题是(1)单点故障(2)通信容量(3)远距离的集中式数据库(4)维护

2.分布式、层次数据库


DNS服务器的部分层次结构

(1)根DNS服务器(2)顶级域DNS服务器(3)权威DNS服务器(4)本地DNS服务器

3.迭代查询iterative query


迭代查询

4.递归查询recursive query


递归查询

5.DNS缓存

2.5.3 DNS记录和报文

1.DNS服务器存储了资源记录RR,RR提供了主机名到IP地址的映射。每个DNS回答报文包含一条或多条资源记录。资源记录是一个4元组(Name,Value,Type,TTL)

2.DNS报文


DNS报文格式

3.在DNS数据库中插入记录。注册登记机构register。域名、主机名记录输入TLD com服务器,主机名和MX类RR输入权威服务器中

2.6 P2P应用

1.主要探讨文件分发和分布式散列表DHT

2.6.1 文件分发

1.P2P体系结构的扩展性。分发时间指所有N个对等方得到该文件的副本所需要的时间。

对于C/S体系结构,D_{cs}≥max\{\frac{NF}{u_s},\frac{F}{d_{min}}  \},对于P2P,D_{P2P}≥max\{\frac{F}{u_s} ,\frac{F}{d_{min}} ,\frac{NF}{u_s+\sum_{1}^N u_i} \}


P2P和C/S体系结构的分发时间

2.BitTorrent,用于文件分发的留下P2P协议。文件分成每块256KB,在洪流中的对等方下载/上载块。每个洪流都有追踪器tracker。每个新进入的对等方向tracker注册自己,并得到对等方子集(邻近对等方)和对等方IP表,并周期性地询问邻近对等方的块列表,采取稀缺优先的技术。这是请求块(chunk),发送块的策略是选择4个能够以最高速率向他提供数据的邻居,这四个邻居称为疏通unchoked,同时随机选择第五位对等方发送数据(此时可能会成为第五位对等方的疏通,那么第五位对等方也会发送数据,这也两者就互为疏通,直到找到更合适的,这样的对换能够找到彼此协调的上载速率),tit-for-tat

2.6.2 分布式散列表DHT

1.DHT:分布的P2P数据库,数据库有键值对,将键值对分布在众多的对等方上。可以用键查询和插入键值对

2.中心问题:定义为对等方分配键的规则。

3.为每个对等方分配一个标识符。为该键最邻近的后继标识符对等方分配

4.环形DHT,平均要发送N/2条,通过增加捷径来优化

5.对等方扰动。为了避免,要求每个对等方联系其第一个和第二个后继(指前面的)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,793评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,567评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,342评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,825评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,814评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,680评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,033评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,687评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,175评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,668评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,775评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,419评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,020评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,206评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,092评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,510评论 2 343

推荐阅读更多精彩内容