可靠的数据流传输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...

面试题 相关文章推荐
以下的初始化有什么区别
Dec 16 面试题
NULL是什么,它是怎么定义的
May 09 面试题
什么是Rollback Segment
Apr 22 面试题
.net软件工程师应聘上机试题
Mar 10 面试题
2019年.net常见面试问题
Feb 12 面试题
简述网络文件系统NFS,并说明其作用
Oct 19 面试题
盛大笔试题
Nov 05 面试题
linux面试题参考答案(8)
Apr 19 面试题
捷科时代的软件测试笔试题
Nov 09 面试题
新锐科技Java程序员面试题
Jul 25 面试题
编程用JAVA解析XML的方式
Jul 07 面试题
什么是继承
Dec 07 面试题
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
德生S2000电路分析
2021/03/02 无线电
mysq GBKl乱码
2006/11/28 PHP
PHP 飞信好友免费短信API接口开源版
2010/07/22 PHP
php中存储用户ID和密码到mysql数据库的方法
2013/02/06 PHP
php多文件上传实现代码
2014/02/20 PHP
PHP中时间加减函数strtotime用法分析
2017/04/26 PHP
YII2框架中excel表格导出的方法详解
2017/07/21 PHP
PHP+MySQL实现模糊查询员工信息功能示例
2018/06/01 PHP
PHP关于foreach复制知识点总结
2019/01/28 PHP
!DOCTYPE声明对JavaScript的影响分析
2010/04/12 Javascript
js快速排序的实现代码
2013/12/08 Javascript
jQuery实现的Div窗口震动特效
2014/06/09 Javascript
JS组件Bootstrap按钮组与下拉按钮详解
2016/05/10 Javascript
AngularJS指令详解及示例代码
2016/08/16 Javascript
AngularJS通过$sce输出html的方法
2016/09/22 Javascript
自定义require函数让浏览器按需加载Js文件
2016/11/24 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
从零学习node.js之详解异步控制工具async(八)
2017/02/27 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
VueX模块的具体使用(小白教程)
2020/06/05 Javascript
Vue 打包的静态文件不能直接运行的原因及解决办法
2020/11/19 Vue.js
python中threading超线程用法实例分析
2015/05/16 Python
Python如何实现守护进程的方法示例
2017/02/08 Python
pycharm远程调试openstack代码
2017/11/21 Python
Python实现购物车购物小程序
2018/04/18 Python
Python多线程原理与用法实例剖析
2019/01/22 Python
python的schedule定时任务模块二次封装方法
2019/02/19 Python
如何用Python来搭建一个简单的推荐系统
2019/08/07 Python
Python关于反射的实例代码分享
2020/02/20 Python
如何写好优秀的创业计划书
2014/01/30 职场文书
房屋继承公证书
2014/04/10 职场文书
安全生产目标责任书
2014/04/14 职场文书
党员教师个人对照检查材料范文
2014/09/25 职场文书
财政局长个人总结
2015/03/04 职场文书
我的中国梦主题班会
2015/08/14 职场文书
2016年党员创先争优公开承诺书
2016/03/25 职场文书