当前位置: 首页 > news >正文

【计算机网络笔记】网络应用对传输服务的需求

系列文章目录

什么是计算机网络?
什么是网络协议?
计算机网络的结构
数据交换之电路交换
数据交换之报文交换和分组交换
分组交换 vs 电路交换
计算机网络性能(1)——速率、带宽、延迟
计算机网络性能(2)——时延带宽积、丢包率、吞吐量/率
计算机网络体系结构概念
OSI参考模型基本概念
OSI参考模型中非端-端层(物理层、数据链路层、网络层)功能介绍
OSI参考模型中端-端层(传输层、会话层、表示层、应用层)功能介绍
TCP/IP参考模型基本概念,包括五层参考模型
网络应用的体系结构
网络应用进程通信


  • 系列文章目录
  • 网络应用对传输服务的需求
  • Internet网络提供的传输服务


网络应用对传输服务的需求

我们已经知道,网络应用之间通过进程间通信,遵循应用层协议实现。那不同应用对消息传输的要求是不一样的,传输层到底为应用层提供了怎样的服务?

网络应用对传输服务的需求主要有这几个方面:

  • 对**数据丢失(data loss)/可靠性(reliability)**的要求。

    • 某些网络应用能够容忍一定的数据丢失,比如说网络电话、网络视频,可以容忍丢失几个帧。
    • 某些网络应用要求100%可靠的数据传输:文件传输网上银行等等。
  • 关于**时间(timing)/延迟(delay)**的要求。

    • 有些应用只有在延迟足够低时才“有效”。如果打游戏的时候时间延迟特别大,那我们的体验感就很差
  • 关于**带宽(bandwidth)**的要求。

    • 某些应用只有在带宽达到最低要求时才“有效”,比如网络视频,如果带宽特别低的话是看不了的,因为是卡的,不连续
    • 某些应用能够适应任何带宽,比如文件下载,网速较快就下载的比较快,网速较慢我们也可以等一等,只要求文件正确的下载下来。

当然不局限于这三方面,比如有的应用有安全性的要求等等。

下面是典型网络应用对传输服务的需求:

在这里插入图片描述

Internet网络提供的传输服务

Internet是主流的网络,但并不是唯一的网络。

Internet提供两类传输服务:TCP和UDP

  • TCP服务

    • 面向连接: 客户机/服务器进程间 需要建立连接。TCP服务是面向连接的服务,连接一旦建立起来就是全双工的。
    • 可靠的传输。
    • 流量控制: 发送方不会发送速度过 快,超过接收方的处理能力。
    • 拥塞控制: 当网络负载过重时能够 限制发送方的发送速度。
    • 不提供时间/延迟保障。
    • 不提供最小带宽保障。
  • UDP服务

    • 无连接

    • 不提供可靠的数据传输

    • 不提供:可靠性保障、流量控制、拥塞控制等等。

    • UDP提供的服务是最基本的

    • 但是留给应用层极大的发挥空间

下面是一些典型网络应用使用的应用层协议和传输层协议:

在这里插入图片描述

http://www.lryc.cn/news/206388.html

相关文章:

  • IDEA启动报错:Command line is too long的解决办法
  • Android 中的 本地广播LocalBroadcastManager
  • 题目 1120: C语言训练-“水仙花数“问题2python详解)——练气三层后期
  • sheng的学习笔记-【中】【吴恩达课后测验】Course 3 - 结构化机器学习项目 - 第二周测验
  • 基于Pytorch的驾驶员分心行为实时检测
  • 【uniapp】小程序开发7:自定义组件、自动注册组件
  • Modbus转MQTT以太网网关MQT-802主要特点和典型应用
  • Go学习第五章——函数与包
  • 【Python 常用脚本及命令系列 5 -- 如何使用 BeautifulSoup 解析CSDN网页表格中的数据】
  • OpenFeign实现分析、源码解析
  • 2023 10月最新Vmd 下载安装教程,WindowsLinux
  • Photoshop(PS)安装教程(图文教程超详细)
  • C++模版进阶
  • CloudCompare
  • 【算法小课堂】深入理解前缀和算法
  • 元对象系统功能
  • 【2024秋招】小米中间件后端开发一面2023-9-13-base武汉
  • SpringMVC Day 01:入门案例
  • docker、docker-compose安装教程,很详细
  • 源代码转换:Tangible Software Solutions 23.10 Crack
  • SAD notes
  • [SQL开发笔记]BETWEEN操作符:选取介于两个值之间的数据范围内的值
  • Babylonjs学习笔记(三)——创建天空盒
  • 【计算机网络】文件传输协议FTP和SFTP
  • Python 编程语言的介绍
  • centos服务器搭建安装Gitlab教程使用教程
  • linux复习笔记02(小滴课堂)
  • AWVS漏洞扫描使用基础与介绍
  • Flink 维表关联
  • 阳光蟹场小程序的盈利模式与思考深度