中科大 计算机网络11 应用层原理

应用层大纲

在这里插入图片描述
传输层向应用层提供的服务,形式是Socket API(原语)
在这里插入图片描述

一些网络应用的例子

互联网层次中,应用层协议最多
流媒体应用:直播
在这里插入图片描述
网络核心最高的层次就是网络层
在这里插入图片描述

应用进程通信方式

在这里插入图片描述
C/S:
客户端:可能是动态IP(DHCP)
服务器:固定IP(中心,地位不平等)
可扩展性差
在这里插入图片描述
对等体:
在这里插入图片描述
混合体:
应用:Napster(音乐共享软件)
注册,登录:C/S
用户越多,资源越多,下载速度越快

QQ:
目录查询,注册,登记:C/S
会话:p2p方式
在这里插入图片描述

进程通信

在同一个主机上,应用进程通信只需要操作系统本身应用进程通信的方式【管道,消息队列,共享缓冲区】,不需要符合网络的标准
在不同的主机,两个应用进程互相发送报文,需要符合网络的规范

客户端(主动)
服务器(被动)
在这里插入图片描述

分布式进程通信需要解决的问题

进程标识:标识自己,让别的能够找到(唯一)

通过Socket ApI来访问传输层向应用层提供的服务
地点:SAP,服务访问点
形式:Socket API

在这里插入图片描述

问题一:对进程进行编址

终端地址:IP
UDP,TCP:传输层协议
端口

知名端口:
web应用(HTTP:80),FTP(21),Talent(23)

任何一对应用进程之间的通信都可以由两个端节点(end port)来标识
在这里插入图片描述

问题二:需要穿过层间的信息

信息:
发的什么:SDU报文
谁发的:IP+TCP/UDP端口
发给谁:对方的IP+TCP/UDP端口

把信息拿到后封装【段头+数据部分】
在这里插入图片描述

在这里插入图片描述

TCP Socket

每次都传输这么多东西:减少传输的信息量–》Socket,便于管理
一个整数
一旦与对方建立连接后,就会返回一个整数,主机之间会话的关系:Socket【本地意义上的标识,对方主机不知道】
四元组:TCP
[本机IP 本机端口号 对方IP 对方端口号]

Socket只有应用层,传输层知道【应用层与传输层的约定】,网络层不知道

在TCP中操作Socket值,就是操作会话关系;与文件系统,操作句柄就是在操作文件一样
在这里插入图片描述

在这里插入图片描述

Socket值:操作系统分配的整数【每个会话不一样】
当前状态在不断地更新

源IP,目标IP:往下交给IP的协议,让IP来封装IP的数据报
SDU+源IP+目标IP封装
在这里插入图片描述
数据本身+【本地IP+本地端口+对方的IP +对方的TCP端口号】-》TCP Socket
会话要交两种
在这里插入图片描述

同一个进程对应一个端口
在这里插入图片描述

UDP Socket

无握手
每个报文传输都是独立的
UDP Socket:本地IP 本地UDP端口【二元组】
本地意义上的二元组的映射关系

数据本身+【本地IP+本地端口】-》UDP Socket
会话必须要对方的IP 和 对方的UDP端口号,所以会话要交三种
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

问题三:使用传输层提供的服务实现应用

应用层的协议:分布式的应用进程在通信时应该遵守的规范

应用协议不是应用的全部,仅仅是应用的一部分【应用交互过程中与网络相关的部分】
应用实体【遵守协议,与网络相关的部分】

Skype:通过互联网打电话
在这里插入图片描述
传输层向应用层提供服务的衡量指标:
数据丢失率【可靠性】
延迟大:如打电话时,自己在说,对方也在说【延迟,现在才穿过来】
吞吐量:取决于瓶颈链路
在这里插入图片描述
数据丢失率:文件传输
实时音视频:吞吐量

在这里插入图片描述

传输层提供的服务TCP UDP

TCP:
实体:实现网络协议的软件或硬件模块【运行当中的】
流量控制:协调发送与接受速率
拥塞控制:能够感知路径的拥塞程度,实时调整
不能保证:时间【定时】 吞吐量 安全性
在这里插入图片描述
IP只能提供主机到主机的区分,不能进程到进程的区分
UDP:通过端口号进行进程到进程的区分

TCP的可靠性消耗了时间和空间的代价

在这里插入图片描述
有些防火墙会过滤UDP
在这里插入图片描述
TCP和UDP都没有安全性
SSL安全套接字层【跑在TCP层上】:提供安全性的服务,在应用层{说传输层也可以}
HTTPS:在TCP的SSL上【安全】
在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/446415.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STL源码剖析 序列式容器 vector 和 ilist

Vector list 单向链表 ilistlist的删除操作,也只有指向被删除元素的迭代器会失效,其他迭代器不会受到影响

中科大 计算机网络5 接入网和物理媒体

接入网 接入网:把边缘(主机)接入核心(路由器,交换机) 骨干网【连接主机和主机】和接入网中都有物理媒体 接入方式:有线和无线 带宽共享/独享 接入网:住宅接入modem modem调制解调…

STL源码剖析 序列式容器 deque双端队列

相较于vector的内存拷贝,deque在内存不足时只需要进行内存的拼接操作即可,不需要重新配置、复制、释放等操作,代价就是迭代器的架构不是一个普通的指针,比较复杂d e q u e 的迭代器 deque是分段连续空间。维持其“整体连续”假象…

中科大 计算机网络6 Internet结构和ISP

互联网的结构 端系统通过接入ISPs接入互联网 n个ISP互相连接: IXP,Internet exchage point:互联网接入点,互联网交互点 ISP:互联网服务提供商,提供接入,提供网络【中国移动,中国电信】 ICP&#xff1a…

STL源码剖析 Stack栈 queue队列

随机迭代器用于随机数据访问,所以栈stack不具备此功能

中科大 计算机网络8 协议层次和服务模型

协议层次 协议层次:现实生活中的例子 分层 分层处理和实现复杂系统 图中,左边是模块,右边是分层 计算机的设计是分层,每一层实现一个或一组功能,下层向上层提供服务;但效率比较低 对等层实体通过协议来交换…

STL源码剖析 heap堆结构

heap一般特指max-heap,即最大的元素位于heap和array的首部 heap不提供遍历功能,也不提供迭代功能

中科大 计算机网络9 互联网历史

总纲 计算机网络 早期1960以前 1961-1972 NCP协议:相当于现在的TCP和IP协议 每个节点即是数据的源也是数据的目标

STL源码剖析 序列式容器 slist

STL l i s t 是个双向链表(double linked lis t) 。SGI STL提供了一个单向链 表 (single linked lis t) , 名 为 slist s l i s t 和 l i s t 的主要差别在于,前者的迭代器属于单向的Forwardlterotor, 后者的迭代器属于双向的Bidirectional Iterator.为此&#xff0…

中科大 计算机网络12 Web和HTTP

Web与HTTP 对象:web页中其实是对象链接 URL:通用资源定位符【任何对象都可以使用URL来唯一标识】 用户名:口令【支持匿名访问,用户名和口令不计】 端口:HTTP:80 FTP:21【使用默认端口号&#x…

STL源码剖析 关联式容器 树 红黑树、二叉搜索树、平衡二叉搜索树

所谓关联式容器,观念上类似关联式数据库(实际上则简单许多):每笔数据(每个元素)都有一个键值(key)和一个实值(value) 2。当元素被插入到关联式 容器中时,容器内部结构(可能是RB-tree,也可能是hash-table)便依照其键 值大小,以某种…

北京大学 软件工程1 软件 软件工程 软件开发 软件工程框架

软件的定义 重新定义软件 新一代信息技术 区块链 创造性思维 软件的特点 软件的种类 支撑软件:VC,PyCharm等 应用软件:QQ,微信 软件工程的起源 软件开发的三个阶段 软件工程概念的提出 软件工程的定义 软件工程将系统化&#…

java学习_Python基础学习教程:从0学爬虫?让爬虫满足你的好奇心

Python基础学习教程:从0学爬虫?让爬虫满足你的好奇心有必要学爬虫吗?我想,这已经是一个不需要讨论的问题了。爬虫,“有用”也“有趣”!这个数据为王的时代,我们要从这个庞大的互联网中来获取到我…

安卓rom制作教程_安卓手机TWRP_Recovery卡刷图文教程 适用于卡刷ROM,TWRP救砖

扫一扫二维码,关注我,解决刷机各种疑难杂症 ROM乐园独家支持最近有很多小伙伴问怎么去卡刷,卡刷的操作是什么,什么是卡刷,小编就仔细来写一下卡刷教程吧,记住,我们所说的卡刷,并不是…

东软 软件工程1 软件危机 软件工程 软件生命周期

软件危机 软件危机产生的原因 消除软件危机的途径: 软件工程历史 软件工程的概念 软件工程项目的基本目标 软件工程的基本原理 软件生命周期 软件工程的中的软件生命周期

东软 软件工程2 软件开发模型 瀑布模型 原型模型 螺旋模型 统一过程模型RUP 敏捷开发模型

软件开发过程模型 瀑布模型 原型模型 螺旋模型 统一过程模型-RUP 敏捷开发模型 敏捷开发模型:Scrum方法 敏捷开发模型:进行Scrum开发

自动点击器一秒200_做PPT还需要找模板?用这招3分钟就能自动排好PPT!

点击上图直达活动详情页,优惠券超 400 元!大家好,我是爱挖神器的洁洁。今天我来跟大家聊聊「PPT里的神器」~我们每次做 PPT 的时候,经常面对的一个难题就是:如!何!排!版 ?比如像这样…

东软 软件工程3 软件项目管理 团队组织管理

团队组织管理 团队的概念 项目组的组织原则 项目组的组织方式 软件项目管理过程组