1.0应用层协议原理及常见应用

应用层协议原理

基本概念:

客户和服务器:在给定一对进程之间的同心会话场景中,发起通信(即在该会话开始时发起与其他金成功的联系)的进程被标识为客户,在会话开始时等待联系的进程是服务器。比如Web中,Web浏览器是客户,Web服务器是服务器。P2P文件共享中,对等方A请求对等方B发送一个特定文件时,A是客户,B是服务器
进程:  简单的可以理解为正在运行的程序。
套接字(socket):同一台主机内应用层与运输层之间的接口。是进程向网络发送报文或接收报文的可编程接口,因此也称为应用程序和网络之间的应用程序编程接口(API)
进程寻址     需要主机地址(IP地址用来标识通信的主机地址)和定义在目的主机中的接收进程的标识符(端口号,标识通信的进程

运输层协议为调用它的应用程序提供的服务类型:

可靠数据传输服务   运输层协议能够确保由应用程序一端发送的数据正确、完全的交付给该应用程序的另一端。如果一个服务协议不提供这种服务时,就无法确保数据完全准确的到达接收进程,这可以被容忍丢失的应用接受,如音频/视频,可以承受一定量的数据丢失。
吞吐量     运输层协议能够以某种特定的速率提供确保的可用吞吐量。具有吞吐量要求的应用程序称为带宽敏感的应用,根据情况或多或少地利用可供使用的吞吐量的应用为弹性应用。比如电子邮件、文件传输、Web传送等。
定时    运输层协议能够提供定时保证。如较低的时延,这对于网络电话和多方游戏的环境中十分重要。
安全性  运输层协议能够为应用程序提供一种或多种安全性服务。包括加密解密等。.

下图为常见应用所需要提供的服务:

因特网为应用程序提供的服务

两个运输层协议,即UDP和TCP

TCP协议 面向连接的服务以及可靠的数据传送服务,同时TCP协议还具有拥塞控制机制 。无加密机制(可以在应用层使用                         安全套接字层(SSL)加强安全)
UDP协议:  面向无连接服务 以及不可靠数据传输服务 ,同时UDP协议无拥塞控制机制    无加密机制

可以看到,TCP提供了可靠的数据传输服务,并且能够通过SSL加强来提供安全服务。但是没有提供吞吐量和定时保证服务。对于这两种服务,由于多年的工作积累,因特网已经能够提供满意的服务,但是不能提供定时或带宽保证。

应用层协议

定义了运行在不同端系统上的应用程序进程如何想和传递报文。特别是定义了:
交换的报文类型,例如请求报文和响应报文
各种报文类型的语法,如报文中的各个字段及这些字段是如何描述的
字段的语义,即这些字段中包含的信息的含义
一个进程何时以及如何发送报文,对报文进行相应的规则。

下图为一些常见应用类型的应用层协议以及支撑他们的传输层协议。

猜你喜欢

转载自blog.csdn.net/weixin_39722922/article/details/88251551