应用层协议原理

应用层是我们日常接触到的层次,比如:

应用层协议原理_第1张图片

应用层体系结构

通常有三个模式

  • C/S 模式:

    服务器:

    • 总是打开的主机

    • 具有固定的、众所周知的IP地址

    • 主机群集常被用于创建强大的虚拟服务器

    客户机:

    • 同服务器端通信

    • 可以间断的同服务器连接

    • 可以拥有动态IP地址

    • 客户机相互之间不直接通信

    应用层协议原理_第2张图片

  • P2P体系结构:

    • 没有总是打开的服务器

    • 任意一对主机直接相互通信

    • 对等方间歇连接并且可以改变IP地址

    • 优点:自扩展性强

    • 缺点:难以管理

    应用层协议原理_第3张图片

  • C/S P2P的混合模式(结合两者优点)如:

    应用层协议原理_第4张图片

应用层通信原理

网络应用实际上是端系统之间对等实体的进程在通信

进程通信

  • 同一主机上的两个进程通过内部进程通信机制进行通信
  • 不同主机上的进程通过交换报文相互通信
  • 客户进程: 发起通信的进程

  • 服务器进程: 等待联系的进程

  • 注意:具有P2P体系结构的应用程序既有客户进程和服务器进程。

进程与计算机网络的接口:套接字 socket

在对等实体之间的进程通过套接字通信

应用层协议原理_第5张图片

进程通过它的套接字在网络上发送和接收报文

套接字又叫做应用程序编程接口API

用户通过API对传输层的控制仅限于:

(1) 选择传输协议

(2) 能设定几个参数

浅谈进程寻址

我们有那么多网络应用,QQ,微信。

对等实体之间的进程通信怎么找到它的目的地呢?

  • 为了一个进程能接收报文, 它需要一个标识

  • 主机有唯一的32位IP地址 **问:**主机的IP地址足够标识进程吗?

  • **答:**不能。因为一台主机上 能够运行许多进程。

主机上的进程标识包括IP地址 和端口号

常用应用程序的端口号:

  • Web服务:80

  • 邮件服务:25

所以说网络应用进程寻址主要是通过IP+端口号实现的

应用层需要什么服务?

应用层协议原理_第6张图片

不同应用的服务是不一样的,在下层传输层提供的服务是可能不一样的。

比如:

应用层协议原理_第7张图片

因特网运输协议提供的服务

TCP服务

面向连接的服务:在客户机程序和服务器 程序之间必须建立连接

  • 可靠的传输服务: 接收和发送进程间

  • 流量控制: 发送方不会淹没接收方

  • 拥塞控制: 网络出现拥塞时抑制发送进程

  • 没有提供:时延保证,最小带宽保证

UDP 服务

不可靠数据传输

没有提供:

  • 建立连接
  • 可靠性
  • 流量控制
  • 拥塞控制
  • 时延和带宽保证

应用层 根据所需确定下层服务

关于传输层的安全性

应用层协议原理_第8张图片

你可能感兴趣的:(程序员必知必会,网络,网络协议)