1.Internet应用
应用层的基本工作原理
常用的网络应用模式
域名服务DNS
电子邮件传输协议:SMTP,POP3等
WWW及其主要技术
远程文件传输协议FTP
2.应用层概述
- 应用程序: 具有通信功能
的分布式进程
用户访问网络的接口
例如:email, file transfer, the Web - 应用层协议:
应用程序的一部分
定义信息格式
定义通信规则
访问下层提供的服务
应用层协议
应用层及其采用的下层协议:
3.常用网络应用模式
1.客户/服务器模型
客户方主动地发起通信请求,服务器方被动地等待通信的建立。
客户软件:
一般运行于用户的个人计算机上;
在需要时向服务器主动发起通信请求;
可以访问多个服务器,但一次只能访问一个;
不需要特殊的硬件和复杂的操作系统。
服务器软件:
是专用的提供某种服务的特权程序,可以同时处理多个远程客户;
一般在系统启动时被执行,并连续运行以处理多次会话;
被动的等待远程客户发起通信;
需要特殊的硬件和复杂的操作系统。
重复型和并发型服务程序:
重复型服务器在处理一个请求时其他请求必须等待
并发型利用生成其他服务器的方法可同时处理多请求
2.客户/服务器模型
B/S模式下客户通过WWW浏览器实现对服务器的访问;
一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓的三层(3-tier)结构。
3.P2P模型
点对点(P2P)模型特点是网络中的任何节点都可以作为服务器或者客户端。
P2P模型优势在于降低了对服务器的依赖以及它的分布式的控制能力。
目录式结构:
纯p2p结构:
目录式P2P结构有利于网络资源的快速检索,但是其集中式的特点容易遭到攻击;
纯P2P结构解决了抗攻击问题,但是又缺乏快速搜索和可扩展性。
改进:混合式P2P结构
由超级节点负责响应用户对等节点的请求
4.Socket编程
Socket是从UNIX的I/O命令集发展而来的。Socket为上层实体提供一种透明的访问网络的能力,本质上说是传输层的服务原语。
TCP 中的套接字系统调用
域名服务
产生原因:
32比特的IP地址难于记忆;
当网络规模比较小时,每台主机只需查找一个列出了主机与IP地址的对应关系的文件;
当网络规模很大时,产生了域名系统DNS(Domain Name System)。
域名的结构:
域名系统是一个多层次的命名系统
域名的结构由若干个分量组成,各分量之间用点隔开:
… .三级域名.二级域名.顶级域名
各分量分别代表不同级别的域名。
域名空间:
域名服务器(DNS: domain name server)
区域划分:
域名空间被划分为许多无重叠的区域(zone) ,每个设有域名服务器管理本区域域名。
每个区域有一个主域名服务器和若干个备份域名服务器
比如:edu.cn、xjtu.edu.cn和 cs.xjtu.edu.cn是三个不同的区域,分别有各自的域名服务器。
DNS解析
域名系统是一个典型的客户/服务器系统;
当本地域名服务器不能解析时,就向根域名服务器查询;
根域名服务器:
如果域名映射未知,则向授权域名服务器查询
取得映射
将映射返回本地域名服务器