应用层协议
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
应用层
13
顶级域名 TLD
(Top Level Domain)
(1) 国家顶级域名 nTLD:如: .cn 表示中国,.us 表示美国 ,.uk 表示英国,等等。 (2) 国际顶级域名 iTLD:采用.int。国际性的组织可在 .int 下注册。 (3) 通用顶级域名 gTLD:最早的顶级域名是:
三级域名 四级域名
…
tsinghua pku fudan sjtu seu
mail csnetl ep
…
DNS name servers
为什么不搞集中的DNS? 单点失败的问题 数据的流通量 远程集中式的数据库 维护问题 难以与时俱进,跟不上发展!
没有服务器能够保存所有
应用层的一个“组成部分” 定义应用程序需交换的报文 和所需采取的动作 位于最高层 使用较低层次所提供的通信 服务 (TCP, UDP)
applicatiBaidu Nhomakorabean transport network data link physical application transport network data link physical
应用层
9
Internet应用: 应用, 传输协议
应用
e-mail 远程终端访问 Web 文件传输 流媒体 远程文件服务器 IP电话
应用协议
smtp [RFC 821] telnet [RFC 854] http [RFC 2068] ftp [RFC 959] 专有协议 (e.g. RealNetworks) NSF 专有协议 (e.g., Vocaltec)
根域名服务器:
如果域名映射未知,则向授权域名服务器查询 取得映射 将映射返回本地域名服务器
a NSI Herndon, VA c PSInet Herndon, VA d U Maryland College Park, MD g DISA Vienna, VA h ARL Aberdeen, MD
定义应用层和传输层间的
Q: 某个进程如何“标识” 另一个 需要与之通信的 进程?(SOCKET 套接字 )
接口 插口(socket: Internet API)
两个进程间的通信, 将数 据送入 socket, 或从 socket 读出数据
IP 地址-运行另一个进程 的主机所拥有的 “端口号(PORT #)” – 允许接收主机来确定的一 个标识,本地进程将报文 发送给它 SOCKET=IP+PORT
应用层
3
客户端-服务器模式
典型的网络应用都是由两个部 分组成: 客户端 和 服务器
客户端:
发起同服务器的联系 (“speaks
application transport network data link physical
request
first”) 一般都从服务器请求服务, Web: 客户端由浏览器实现; email: 通过OE、Foxmial实现
应用层
5
关于端口的说明
端口是应用进程的标识,本质上是一个存放在
传输层首部的一个字段的值,如TCP端口, UDP端口。 端口可以看作传输层对于应用层的SAP 端口占两个字节,范围是0-65535
保留使用的端口0-1023
http:80. Dns:53. Smtp:25 pop:110
遍布世界各地的 13个根域名服务器
应用层
17
递归查询
递归与迭代相结合的查询
DNS: 缓存和更新纪录
一旦 (任何) 域名服务器得知了某个映射, 就将其
缓存
在一定的时间间隔后缓存的条目将会过期(自动消 除) 更新/通知 机制由 IETF负责设计
RFC 2136
http://www.ietf.org/html.charters/dnsind-charter.html
j NSI (TBD) Herndon, VA
k RIPE London i NORDUnet Stockholm m WIDE Tokyo
e NASA Mt View, CA f Internet Software C. Palo Alto,
CA
b USC-ISI Marina del Rey, CA l ICANN Marina del Rey, CA
应用层
本讲目标:
网络应用层的概念和
实现 客户端-服务器范式 服务模型
通过对常用应用层协
深层次目标 特定协议:
议的探讨和分析来学 习网络协议
dns http ftp smtp pop
应用层
1
应用层协议
应用层负责的是进程与进程之 间的通信 应用层协议:
application transport network data link physical
Type=NS value =真名 name = 域 (e.g. foo.com) Type=MX value =该域授权域名服务 value = 与 name相关的邮件 器的 IP 地址 服务器域名
应用层
21
DNS 协议-报文格式
DNS 协议 : 查询和应答报文, 二者格式相同
带宽
弹性 弹性 弹性 音频: 5Kb-1Mb 视频:10Kb-5Mb 同上 几 Kb/s 以上 弹性
实时性
无 无 无 100’s msec few secs 100’s msec yes and no
应用层
8
Internet 的传输协议服务
TCP 服务:
UDP服务:
在客户端和服务器进程之间
面向连接: 在客户端和服务器进
带宽(Bandwidth) 某些应用(e.g., 多媒体) 对最低带宽有要求 其他应用(“弹性应用”) 则可灵活应用所能得到 的带宽
应用层
7
常用应用程序对传输功能的要求
应用程序 数据丢失
文件传输 e-mail Web 网页 实时音频/视频 存储音频/视频 交互式游戏 金融应用 不丢失 不丢失 不丢失 允许丢失 允许丢失 允许丢失 允许丢失 不丢失
应用层
20
DNS 纪录
DNS: 存储资源纪录 (RR)的分布式数据库
RR 格式: (name,
Type=A name = 主机名 value = IP 地址
value, type,ttl)
Type=CNAME Name= 别名
www.ibm.com is really servereast.backup2.ibm.com
程之间需要建立连接(setup ) 可靠传输 : 在发送和接受进程 之间 流量控制: 发送数据的速度决不 超过接收的速度 拥塞控制: 当网络超负荷时,束 紧发送端口,减缓发送速度 不提供: 实时性, 最小带宽承诺
实现“不可靠的”数据传输 不提供:连接建立, 可靠性保 证,流量控制,拥塞控制,实时 性, 最小带宽承诺 Q: 既生喻,何生亮? Why is there a UDP?
应用层
23
万维网 WWW概述
万维网 WWW (World Wide Web)并非某种特殊的
计算机网络。 万维网是一个大规模的、联机式的信息储藏所。
万维网用链接的方法能非常方便地从因特网上的一个
站点访问另一个站点,从而主动地按需获取丰富的信 息。 这种访问方式称为“链接”。
应用层
24
身份证, 姓名, 护照 #
IP 地址 (32 bit) – 用于 数据报寻址 “域名”, e.g., ctec.xjtu.edu.cn – 帮助 记忆
Domain Name System:
因特网主机, 路由器:
分布式数据库:由许多域 名服务器按层次构成
DNS透明的解决了IP地址
和域名的转换问题 DNS传输一般使用UDP,端 口53。
万维网提供分布式服务
① ② 万维网 站点 A
③ ④
⑤ ⑥
万维网站点 B
万维网站点 E
万维网 站点 C
万维网站点 D
应用层
25
超媒体与超文本
万维网是分布式超媒体(hypermedia)系统,它是超文
本(hypertext)系统的扩充。 一个超文本由多个信息源链接成。利用一个链接可使 用户找到另一个文档。这些文档可以位于世界上任何 一个接在因特网上的超文本系统中。超文本是万维网 的基础。 超媒体与超文本的区别是文档内容不同。超文本文档 仅包含文本信息,而超媒体文档还包含其他表示方式 的信息,如图形、图像、声音、动画,甚至活动视频 图像。
Name-to-IP 地址的映射 本地域名服务器:
每个 ISP, 企业可拥有 本地
(默认) 域名服务器
主机的 DNS 查询首先发往 本地域名服务器 每台主机必须在授权服务器 上注册登记 可完成域名/地址的转换
授权域名服务器:
应用层
16
DNS: 根域名服务器
当本地域名服务器不能解析时,就向根域名服务器查询
所依赖的传输协议
TCP TCP TCP TCP TCP or UDP TCP or UDP typically UDP
应用层
10
在IE中输入网址后……
首先域名解析DNS,浏览器和DNS服务器交
互 其次采用http协议,浏览器和Web服务器交互
应用层
11
DNS: 域名系统
自然人: 诸多定义:
Q: IP 地址和域名之间如 何映射(转换) ?
应用层
12
因特网的域名结构
因特网采用了层次树状结构的命名方法。 任何一个连接在因特网上的主机或路由器,都
有一个惟一的层次结构的名字,即域名。
域名的结构由若干个分量组成,各分量之间用
点隔开: … .三级域名.二级域名.顶级域名
各分量分别代表不同级别的域名。
应用层
2
网络应用程序: 一些术语
进程(Process): 主机中运行 用户代理(User agent): 中的程序. 软件进程, 是介于用户 ( above )和网络( 在某些主机中, 两个进程 below )之间的接口 使用进程间通信 (由 OS 管理). 实现应用级协议 而运行在不同主机上的进 Web: 浏览器 程则使用应用层协议进行 E-mail: OE、Foxmail 通信 流媒体: media player
reply
application transport network data link physical
服务器:
向客户端提供所请求的服务 e.g., Web 服务器发送被请求的 Web
页面, 邮件服务器传递 e-mail
应用层
4
应用层协议(续)
应用程序接口(API: application programming interface)
应用层
26
万维网的工作方式
万维网以客户服务器方式工作。 浏览器就是在用户计算机上的万维网客户程序。
万维网文档所驻留的计算机则运行服务器程序, 因此这个计算机也称为万维网服务器。
客户程序向服务器程序发出请求,服务器程序向
客户程序送回客户所要的万维网文档。
在一个客户程序主窗口上显示出的万维网文档称
报文首部
identification: 16 bit #
用于查询, 应答报文使用同 样的 # flags: 查询 或 应答 希望递归 可以递归 授权应答
应用层
22
DNS 协议-报文格式
Name, type fields 查询报文 RRs 响应
来自授权服务器的纪录
其他“帮助”信息
.com 表示公司企业 .net 表示网络服务机构 .org 表示非赢利性组织 .edu 表示教育机构(美国专用) .gov 表示政府部门(美国专用) .mil 表示军事部门(美国专用)
应用层
14
因特网的名字空间
树根 顶级域名
… coop info biz aero com net org edu gov mil int cn uk … cctv… ibm hp mot 二级域名 … hk js sh bj org net gov edu com ac
用户可以使用的端口1024-65535
问题:为什么不使用操作系统的进程号来标识
进程。
应用层 6
应用进程需要怎样的传输服务?
数据丢失(Data loss) 某些应用 (e.g., audio) 可 以容忍某种程度上的数据丢 失 其他应用 (e.g., 文件传输, telnet) 要求 100% 可靠的 数据传输 实时性(Timing) 某些应用(e.g., IP 电话 , 交互式游戏) 要求较低 的时延