IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络 Kurose 第二章 应用层 2.5 P2P文件分发 && 2.6 视频流和内容分发网 -> 正文阅读

[网络协议]计算机网络 Kurose 第二章 应用层 2.5 P2P文件分发 && 2.6 视频流和内容分发网

2.5 P2P文件分发

1.P2P体系结构的扩展性

分发时间:所有N个对等方得到该文件的副本所需要的时间

  • 客户-服务器体系结构最小分发时间D_{cs}=max\left \{ \frac{NF}{u_{s}},\frac{F}{d_{min}} \right \}
  • P2P体系结构最小分发时间D_{P2P}^{}=max\left \{ \frac{F}{u_{s}},\frac{F}{d_{min}},\frac{NF}{u_{s}+\sum_{i=1}^{N}u_{i}} \right \}

u_{s}表示服务器接入链路的上载速率,u_{i}表示第i个对等方接入链路的上载速率。d_{min}表示具有最小下载速率的对等放的下载速率。F表示分发文件的长度。N表示要获得的该文件副本的对等放数量。

2.BitTorrent

BitTorrent是一种用于文件分发的流行P2P协议。参与一个特定文件分发的所有对等方的集合被称为一个洪流。每个洪流具有一个基础设施节点,称为追踪器。当一个对等方加入某洪流的时候,它向追踪器注册自己,并周期性地通知追踪器它仍然在该洪流中。

假设有一个新的对等方Alice加入该洪流,追踪器随机地从参与对等方的集合中选择对等方的一个子集,并将该子集的IP地址发送给Alice。Alice持有对等方的这张列表,试图与该列表上的所有对等方创建并行的TCP连接。

2.6 视频流和内容分发网

2.6.1 因特网视频

视频是一系列图像,通常以一种恒定的速率来展现。压缩的因特网视频的比特率范围通常从用于低质量视频的100kps,到用于流式高分辨率电影的超过3Mbps,再到用于4K六十展望的超过10Mbps。我们也能使用压缩生成相同视频的多个版本,每个版本有不同的质量等级。

2.6.2HTTP流和DASH

在HTTP流中,视频只是存储在HTTP服务器中作为一个普通文件,每个文件有一个特定的URL。当用户要看该视屏的时候,客户与服务器创建一个TCP连接并且发送对该URL的HTTP GET请求。

DASH(经HTTP的动态适应性流)。在DASH中,视频编码为几个不同的版本,其中每个版本具有不同的比特率,对应不同的质量水平。客户动态的请求来自不同版本且长度为几秒的视频段数据块。当可用带宽较高的时候,客户自然地选择来自高速率版本地块;当可用带宽量较低地时候,客户自然地选择来自低速率版本的块。

2.6.3 内容分发网

CDN(内容分发网)管理分布在多个地理位置上的服务器,在它的服务器中存储视频的副本。并且试图将每个用户请求定位到一个将提供最好的用户体验的CDN位置。CDN分为专用CDN和第三方CDN。

1 CDN操作

假定一个内容提供商NetCinema,雇佣了第三方CDN公司Kingcdn来向其客户分发视频。

1)用户访问位于NetCinema的Web网页。

2)当用户点击连接http://video.netcinema.com/6Y7B23V时,该用户主机发送了一个对于video.netcinema.com的DNS请求。

3)用户的本地DNS服务器(LDNS)将该DNS请求中继到一台用于NetCinema的权威DNS服务器,该服务器观察到主机名video.netcinema.com中的“video”字符串。为了将该DNS请求移交给KingCDN,Netcinema权威DNS服务器并不返回一个IP地址,而是向LDNS返回一个KingCDN域的主机名。

4)从这时起,DNS请求进入了KingCDN专用DNS基础设施,用户的LDNS则发送第二个请求,KingCDN的DNS系统最终向LDNS返回KingCDN内容服务器的IP地址。

5)LDNS向用户主机转发内容服务CDN节点的IP地址。

6)一旦客户收到KingCDN内容服务器的IP地址,它与具有该IP地址的服务器创建了一条直接的TCP连接,并且发出对该视屏的HTTP GET请求。

2.集群选择策略

任何CDN部署,其核心是集群选择策略。即动态的将客户定向到CDN中的某个服务器集群或者是数据中心的机制。

复习题

R21.在BitTorment中,假定Alice向Bob提供一个30秒间隔的文件块吞吐量。Bob将必须进行回报,在相同的间隔中向Alice提供文件块吗?为什么?

Bob也没有必要为Alice提供块。Alice必须是Bob的前4位邻居,Bob才能向她发送块;即使Alice在30秒的间隔内向Bob提供块,也可能不会发?这种情况。

R22.考虑一个新对等方Alice加入BifTorrent而不拥有任何文件块。没有任何块,因此她没有任何东西可上载,她无法成为任何其他对等方的前4位上载者。那么Alice将怎样得到她的第一个文件块呢?

回想?下,在BitTorrent中,?个对等点选择?个随机的对等点,并乐观地在短时间内解除该对等点的阻塞。因此,爱丽斯最终会被她的?个邻居发送,在此期间,她会从邻居那?得到很多块。

R23.覆盖网络是什么?它包括路由器吗?在覆盖网络中边是什么?

P2P?件共享系统中的覆盖?络由参与?件共享系统的节点和节点之间的逻辑链接组成。如果A和B之间有?个半永久的TCP连接,则从节点A到节点B有?个逻辑链路(图论术语中的“边缘”)。覆盖?络不包括路由器。
?

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-03-21 21:30:49  更:2022-03-21 21:33:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:59:52-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码