一:主要知识点
应用层协议原理
二:应用层协议原理
1:研发网络应用程序的核心是写出能够运行在不同的端系统和通过网络彼此通信的程序
三:网络应用程序体系结构
1 应用程序体系结构:由应用程序研发者设计,规定了如何在各种端系统上组织应用程序。
2 两种主流体系结构:客户端--服务器体系结构,对等(p2p)体系结构
四:进程通信
1 在操作系统的术语中,进行通信的实际上是进程而不是程序。一个进程可以被认为是运行在端系统中的一个程序。
2 在两个不同的端系统上的进程,通过跨越计算机网络交换报文而相互通信。
3 进程通过一个称为套接字的软件接口向网络发送报文和从网络接收报文
4 套接字是同一台主机内应用层与输出层之间的接口。由于该套接字是建立网络应用程序的可编程接口,因此套接字也称为应用程序和网络之间的应用程序编程接口(API)
五:可供应用程序使用的运输服务
1 一个运输层协议能够为调用它的应用程序提供什么样的服务呢?我们大致能够从四个方面对应用程序服务要求进行分类:可靠数据传输,吞吐量,定时和安全性
2 可靠数据传输:运输层协议能够潜在地向应用程序提供的一个重要服务是进程到进程的可靠数据传输。当一个运输协议提供这种服务时,发送进程只要将其数据传递进套接字,就可以完全相信该数据将能无差错地到达接收进程、
3 吞吐量:在沿着一条网络路径上的两个进程之间的通信会话场景中,可用吞吐量就是发送进程能够向接收进程交付比特的速率
4 定时:运输层协议也能提供定时保证,如同具有吞吐量保证那样,定时保证能够以多种多式实现。
5 安全性:运输协议能够为应用程序提供一种或多种安全性服务。
六:因特网提供的运输服务
1 因特网(更一般的是TCP/IP网络)为应用程序提供两个运输层协议,即UDP和TCP
七:应用层协议
1 应用层协议:定义了运行在不同端系统上的应用程序进程如何相互传递报文。特别是应用层协议定义了:a 交换的报文类型,例如请求报文和响应报文。b 各种报文类型的语法,如报文中的各个字段及这些字段是如何描述的 c 字段的语义 d 一个进程何时以及如何发送报文,对报文进行响应的规则。
八:本书涉及的网络应用
1 本章节中详细讨论5中重要应用:web,文件传输,电子邮件,目录服务和p2p