Performance of Transport Control Protocol over Dynamic Spectrum Access Links
2007 IEEE
这篇论文主要就是分析了几个版本的TCP协议在DSA网络中的性能问题。
得出的结论是:
大部分现在在用的几个版本的TCP协议,都是能够较好地适应DSA环境,吞吐率都能达到95%。当然,是在满足几个前提下:
1)BS(基站)的buffer足够大(并不是一个不可实现的值,是一个实际能够满足的值。)
2)TCP是采用了SACK的。
另外的一个结论是,如果延迟相当大,一切都扯淡。而PU的出现,就可能引起相当大的延迟,从而导致TCP性能的严重降低。作者指出了这一点。
其中,还有其他的结论,比如,嗅探时间的长短对TCP性能的影响,因为本文采取的是”完美嗅探“,因为嗅探时间短并没有造成什么负面影响;但当嗅探时间很长时,延迟就不可避免的增大了(因为嗅探期是不能发包的,即使采用了buffer,不至于丢包,但延迟足够大,一切又都扯淡。)
当然,从头看这篇文章,它使用的模型是这样子的:
Sender->BS 是有线网络,带宽10Mbit/s,一个恒定延迟用来表征现实中在链路传输中可能遇到的延迟。另外的延迟包括链路队列延迟、传输延迟。DSA中不计传播延迟。(带过,木有给具体值~)
BS->Receiver DSA网络,M信道,总带宽2.4Mbit/s,带宽平均分配,当M变化时,每个信道的带宽随之变化(M的不同主要是实验对比)。PU到来离去参数是λ、μ.
Receiver->BS 2.5Mbit/s的恒定无线网络,从而使得TCP的ACK信息得以稳定传输。
DSA没有链路错误,BS利用“energy detection”进行信道选择,“完美选择”。
在此场景下,试验TCP Vegas,New Reno ,NS Reno with SACK的不同表现。
结果在最开始已经说过了。
要讨论的问题是:这个DSA网络不符合真实场景?
Receiver->BS的通信,这么设计?真实场景中是这样,还是只是为了实验?应该来说,在选定信道后通信,数据的传输都是在同一个信道的,因而这种模拟应该不符合实际场景的,因为其结论应该也是有待商榷的。
那么之所以结论中的TCP能很好的适应DSA,应该就是基于这样一种假设,同时加上:
BS的buffer足够大。
嗅探时长保持很小,不会带来明显的TCP延迟。
PU带来的延迟足够小,不影响TCP的性能。
而实际情况中,
嗅探时间是需要权衡准确率与时间的。模拟中不考虑时间的操作,采用完美嗅探,可以把时间设计的足够小,以不会造成明显延迟。这种设计可取,但不完美。
PU带来的延迟,应该来说是DSA中最要考虑的因素。一个是PU自身的到达离去特征本身决定了频谱切换的频繁程度;一个是频谱切换本身涉及到的空出信道、嗅探、获得新信道的时延。这是重要的一部分。这部分时延应该是足以引起TCP反馈的。
(这是时延引起的TCP性能下降;另外的一个问题是,切换信道后,TCP可能并不能够充分使用新的信道容量。具体地?)
所以,要关注的点是:切换到底需要多长时间,会不会给TCP带来可感知的延迟。
(如果极快而不可感知,TCP的性能不会受到影响。那就不需要研究这一块了。)
Performance of Transport Control Protocol over Dynamic Spectrum Access Links的更多相关文章
- Internet History,Technology,and Security -Transport Control Protocol(TCP)(Week6)
Week6 Technology: Transport Control Protocol(TCP) Welcome to Week 6 of IHTS. We are in our second we ...
- A Survey of Dynamic Spectrum Access
这是2007年IEEE Signal Process 杂志上的一篇文章.综述DSA的.正如文章最后所说,DSA/OSA(Opportunity Spectrum Access)还处于襁褓期,在技术.政 ...
- Internet History, Technology, and Security(week6)——Technology: Transport Control Protocol(TCP)
前言: 这周开始学习分层网络模型的第三层,传输层. Transport/Reliability: Transport Layer TCP层的目的是补偿IP层中可能出现的错误,并充分利用可用资源.由于I ...
- DSASync: Managing End-to-End Connections in Dynamic Spectrum Access Wireless LANs
其实跟上一篇是同一篇文章.不过上一篇是发表在IEEE Secon2010了,这篇是后来又增加了部分内容后的一版,收录在IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. ...
- Managing TCP Connections in Dynamic Spectrum Access Based Wireless LANs
2010年IEEE Secon的一篇文章.当然了,应该是之前就写好了,发表过,还是直接投到Secon了呢?直接投的吧,Secon不接受已发表过的吧. 本文的着笔点:有线网与DSAN(启用了DSA特性的 ...
- OSA-MAC: A MAC Protocol for Opportunistic Spectrum Access in Cognitive Radio Networks
This full text paper was peer reviewed at the direction of IEEE Communications Society subject matte ...
- [Twisted] transport和protocol解耦
Twisted中transport和protocol完全解耦. 这样设计的优点: 1.不同的Protocol协议实现可以重用相同类型的transport. 2.方便测试:假如测试一个协议实现,可以使用 ...
- 传输控制协议--- Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP) 用于网络通信的传输控制和网络协议套件,包括很多协议,其中最主要的是TCP和IP协议.TCP/IP属于UNIX类系统的内置协议,被 ...
- TCP(Transmission Control Protocol)学习笔记
一.TCP(Transmission Control Protocol)原理介绍(参考维基百科) TCP连接包括三种状态:连接建立.数据传送和连接终止. TCP用三路握手(three-way hand ...
随机推荐
- abiword Namespace List
abiword Namespace List Here is a list of all namespaces with brief descriptions: abicollab 这个命名空间以及 ...
- Effective Java2读书笔记-创建和销毁对象(一)
第1条:考虑用静态工厂方法代替构造器 通常情况下,我们创建一个对象采取new的形式,但是还有一种方法也是经常使用到的,它的名称叫做静态工厂方法. 例如,java中基本类型boolean的包装类Bool ...
- LeetCode_Longest Common Prefix
Write a function to find the longest common prefix string amongst an array of strings. class Solutio ...
- LeetCode_Jump Game
Given an array of non-negative integers, you are initially positioned at the first index of the arra ...
- QT---线程间通信(要先编译libqt-mt.so?)
在 Qt 系统中,运行着一个GUI 主事件线程,这个主线程从窗口系统中获取事件,并将它们分发到各个组件去处理.在 QThread 类中有一种从非主事件线程中将事件提交给一个对象的方法,也就是 QThr ...
- SQLServer XML类型
SQL Server从2005起开始支持xml类型,这个数据类型对于后期的改变非常有用.一对多的关系在后期变成了多对多的关系,XML类型就是一个不错的选择. 1.创建测试数据 创建表 --创建表,包含 ...
- 如何从Eclipse导入github上的项目源码
1.首先在github.com上申请一个账号,比如笔者的账号为puma0072.Eclipse需要安装egit插件,在Eclipse中选择help->Marketplace,在search中输入 ...
- C语言的本质(36)——makefile基础
除了Hello World这种极简单的程序之外,一般的程序都是由多个源文件编译链接而成的,这些源文件的处理步骤通常用Makefile来管理.makefile带来的好处就是--"自动化编译&q ...
- java 防止sql注入的方法(非原创)
一.SQL注入简介 SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库. 二.SQ ...
- Eclipse插件Mylyn管理上下文任务管理
原文地址:http://www.ibm.com/developerworks/cn/java/j-mylyn1/ Mylyn 2.0,第 1 部分: 集成的任务管理 使用集成的 Eclipse 问题跟 ...