可靠的数据流传输TCP


Posted in 面试题 onMarch 15, 2016
1、TCP/IP的可靠传输服务五个特征:面向数据流、虚电路连接、有缓冲的传输、无结构的数据流、全双工的连接。
2、TCP采用了具有重传功能的肯定确认技术作为可靠数据流传输服务的基础。
3、为了提高数据流传输过程的效率,在上述基础上引入滑动窗口协议,它允许发送方在等待一个确认之前可以发送多个分组。滑动窗口协议规定只需重传未被确认的分组,且未被确认的分组数最多为窗口的大小。
4、TCP功能
TCP定义了两台计算机之间进行可靠的传输而交换的数据和确认信息的格式,以及计算机为了确保数据的正确到达而采取的措施。
5、TCP连接使用是一个虚电路连接,连接使用一对端点来标识,端点定义为一对整数(host,port)其中host是主机的IP地址,port是该主机上TCP端口号。
6、TCP使用专门的滑动窗口协议机制来解决传输效率和流量控制这两个问题,TCP采用的滑动窗口机制解决了端到端的流量控制,但并未解决整个网络的拥塞控制。
7、TCP允许随时改变窗口小,通过通告值来说明接收方还能再接收多少数据,通告值增加,发送方扩大发送滑动窗口;通告值减小,发送方缩小发送窗口。
8、TCP的报文格式
报文分为两部分:报头和数据,报头携带了所需要的标识和控制信息。
确认号字段指示本机希望接收下一个字节组的序号;
顺序号字段的值是该报文段流向上的数据流的位置,即发送序号;
确认号指的是与该报文段流向相反方向的数据流。
9、TCP使用6位长的码位来指示报文段的应用目的和内容
URG紧急指针字段可用;ACK确认字段可用;PSH请求急近操作;RST连接复位;SYN同步序号;FIN发送方字节流结束。
10、TCP的三次握手
为了建立一个TCP连接,两个系统需要同步其初始TCP序号ISN。序号用于跟踪通信顺序并确保多个包传输时没有丢失。初始序号是TCP连接建立时的起始编号。
同步是通过交换携带有ISN和1位称为SYN的控制位的数据包来实现的。
握手可由一方发起也可以双方发起,建立就可以实现双向对等地数据流动,没有主从关系。

Tags in this post...

面试题 相关文章推荐
介绍一下Java的安全机制
Jun 28 面试题
什么是Deployment descriptors;都有什么类型的部署描述符
Jul 28 面试题
JSF面试题:Jsf中导航的标签是什么
Apr 20 面试题
几个数据库方面的面试题
Jul 01 面试题
.NET面试10题
Feb 24 面试题
什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?
Aug 13 面试题
介绍一下如何利用路径遍历进行攻击及如何防范
Jan 19 面试题
extern是什么意思
Mar 10 面试题
init进程的作用
Apr 12 面试题
简述进程的启动、终止的方式以及如何进行进程的查看
Jul 12 面试题
什么是JNDI的上下文?如何初始化JNDI上下文
Mar 10 面试题
UNIX特点都有哪些
Apr 05 面试题
UDP协议功能
Jan 06 #面试题
路由表示做什么用的?在linux环境中怎么来配置一条默认路由?
Jun 07 #面试题
Internet体系结构
Dec 21 #面试题
.TTL是什么?有什么用处,通常那些工具会用到它?(ping? traceroute? ifconfig? netstat?)
May 09 #面试题
TCP/IP模型的分界线
Dec 01 #面试题
在子网210.27.48.21/30种有多少个可用地址?分别是什么?
Jul 27 #面试题
TCP/IP的分层模型
Oct 27 #面试题
You might like
1.PHP简介
2006/10/09 PHP
php 定义404页面的实现代码
2012/11/19 PHP
php获取网站百度快照日期的方法
2015/07/29 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
2018/02/10 PHP
GreyBox技术总结(转)
2010/11/23 Javascript
使用jquery为table动态添加行的实现代码
2011/03/30 Javascript
浅析Prototype的模板类 Template
2011/12/07 Javascript
基于jQuery实现左右div自适应高度完全相同的代码
2012/08/09 Javascript
jQuery:delegate中select()不起作用的解决方法(实例讲解)
2014/01/26 Javascript
jQuery对于显示和隐藏等常用状态的判断方法
2014/12/13 Javascript
js面向对象之静态方法和静态属性实例分析
2015/01/10 Javascript
JavaScript、tab切换完整版(自动切换、鼠标移入停止、移开运行)
2016/01/05 Javascript
更靠谱的H5横竖屏检测方法(js代码)
2016/09/13 Javascript
jQuery动态增减行的实例代码解析(推荐)
2016/12/05 Javascript
jquery实现多次上传同一张图片
2017/01/09 Javascript
详解react、redux、react-redux之间的关系
2018/04/11 Javascript
vue 集成 vis-network 实现网络拓扑图的方法
2019/08/07 Javascript
vue中英文切换实例代码
2020/01/21 Javascript
通过JS判断网页是否为手机打开
2020/10/28 Javascript
如何在vue中使用kindeditor富文本编辑器
2020/12/19 Vue.js
[02:53]2018年度DOTA2最佳战队-完美盛典
2018/12/17 DOTA
Python结合ImageMagick实现多张图片合并为一个pdf文件的方法
2018/04/24 Python
使用Python控制摄像头拍照并发邮件
2019/04/23 Python
python3实现弹弹球小游戏
2019/11/25 Python
python3爬取torrent种子链接实例
2020/01/16 Python
python默认参数调用方法解析
2020/02/09 Python
英国航空官网:British Airways
2016/09/11 全球购物
美国棒球装备和用品商店:Baseball Savings
2018/06/09 全球购物
大学生的网络创业计划书
2013/12/26 职场文书
财务会计专业个人求职信范本
2014/01/08 职场文书
县政府办公室领导班子个人对照检查材料
2014/09/16 职场文书
2015年行风建设工作总结
2015/05/15 职场文书
68句权威创业名言
2019/08/26 职场文书
解决Golang中ResponseWriter的一个坑
2021/04/27 Golang
html5实现点击弹出图片功能
2021/07/16 HTML / CSS
Python实现视频自动打码的示例代码
2022/04/08 Python