TCP/IP协议组随笔
原文:https://my.oschina.net/xianggao/blog/654677
IP层负责网络主机的定位,数据传输的路由
,由IP地址可以唯一的确定Internet上的一台主机。
TCP层负责面向应用的可靠的或非可靠的数据传输机制
,这是网络编程的主要对象。
TCP/IP是个协议组,可分为三个层次
网络层:IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议;
传输层:TCP协议与UDP协议;
应用层:FTP、HTTP、TELNET、SMTP、DNS等协议;
HTTP是应用层协议,其传输都是被包装成TCP协议传输。可以用SOCKET实现HTTP。SOCKET是实现传输层协议的一种编程API,可以是TCP,也可以是UDP。
TCP --- 传输控制协议,提供的是面向连接、可靠的字节流服务
。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。 理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求。
TCP是一种面向连接的保证可靠传输的协议
。通过TCP协议传输,得到的是一个顺序的无差错的数据流
。发送方和接收方的成对的两个socket之间必须建立连接,以便在TCP协议的基础上进行通信,当一个socket(通常都是server socket)等待建立连接时,另一个socket可以要求进行连接,一旦这两个socket连接起来,它们就可以进行双向数据传输,双方都可以进行发送或接收操作。
TCP的特点
TCP是面向连接的协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP是面向连接协议,所以只能用于点对点的通讯
。而且建立连接也需要消耗时间和开销。
TCP传输数据无大小限制,进行大数据传输
。
TCP是一个可靠的协议
,它能保证接收方能够完整正确地接收到发送方发送的全部数据。
要了解TCP,一定要知道"三次握手,四次拜拜"
所谓的三次握手,就是发送数据前必须建立的连接叫三次握手,握手完了才开始发的
,这也就是面向连接的意思。
第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手;
【适用情况】
TCP发送的包有序号,对方收到包后要给一个反馈,如果超过一定时间还没收到反馈就自动执行超时重发,因此TCP最大的优点是可靠
。一般网页(http)、邮件(SMTP)、远程连接(Telnet)、文件(FTP)传送就用TCP
TCP在网络通信上有极强的生命力
,例如远程连接(Telnet)和文件传输(FTP)都需要不定长度的数据被可靠地传输。但是可靠的传输是要付出代价的,对数据内容正确性的检验必然占用计算机的处理时间和网络的带宽
,因此TCP传输的效率不如UDP高。
TCP四次拜拜
1. 客户端发送数据完毕之后,提出要断开连接
2. 服务器收到FIN包后,对其作出反应,发送ACK包,确认这一方向的连接将关闭,
3. 等服务器的应用程序做好关闭准备时,服务器反方向发送FIN包,请求关闭连接请求,
4. 客户机对服务器发送的请求进行确认,并发送ACK包
TCP/IP协议组随笔的更多相关文章
- TCP/IP协议组学习笔记
TCP/IP协议族学习笔记: 一.基础概念: (1)TCP(Transmission Control Protocol) 传输控制协议. (2)IP(Internet Protocol)网际协议.IP ...
- 网络中常用的各种协议(针对TCP/IP协议组)
网络层: ip协议->网络互连协议 用途:将多个包在网络中联系起来,传输数据包(不可靠传输),最基本功能就是寻址和分段功能,不提供端到端,路由到路由的确认,不提供重发和流量控制.是计算机网络能狗 ...
- TCP/IP协议(一)网络基础知识
参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述).OSI参考模型.网络概念的本质.网络构建的设备等 ...
- 转:TCP/IP协议(一)网络基础知识
转载:http://www.cnblogs.com/imyalost/p/6086808.html 参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知 ...
- TCP/IP协议(一)网络基础知识 网络七层协议
参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述).OSI参考模型.网络概念的本质.网络构建的设备等 ...
- TCP/IP协议<一>
下面是协议层从底层至顶层的一个模型图: 一.计算机网络的背景 1.1 计算机的发展 有人说:“20世纪最伟大的发明就是计算机”,自诞生伊始,计算机经历了一系列发展,从大型通用计算机.超级计算机.小型机 ...
- [转]TCP/IP 协议基础(一)
参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述).OSI参考模型.网络概念的本质.网络构建的设备等 ...
- TCP/IP协议基础(转)
转自 http://www.chinaunix.net 作者:Bernardus160 发表于:2003-12-03 17:33:15 TCP/IP协议基础 -------------------- ...
- TCP/IP协议族(一) HTTP简介、请求方法与响应状态码
接下来想系统的回顾一下TCP/IP协议族的相关东西,当然这些东西大部分是在大学的时候学过的,但是那句话,基础的东西还是要不时的回顾回顾的.接下来的几篇博客都是关于TCP/IP协议族的,本篇博客就先简单 ...
随机推荐
- 【BZOJ1123】 [POI2008]BLO (tarjan)
tarjan判断割点...拿掉一个点之后,会被分成若干个联通块,用节点个数和统计一下他们相互不能到达的个数就好. ; maxm=; type edgetype=record toward,next:l ...
- [YNOI2017][bzoj4811][luogu3613] 由乃的OJ/睡觉困难综合症 [压位+树链剖分+线段树]
题面 BZOJ题面,比较不清晰 Luogu题面,写的比较清楚 思路 原题目 我们先看这道题的原题目NOI2014起床困难综合症 的确就是上树的带修改版本 那么我们先来解决这个原版的序列上单次询问 二进 ...
- Fiddler配置代理hosts的方法
1 背景 fiddler本身代理hosts配置表,修改后,可以省去在手机等代理使用者的系统中修改hosts 2 使用场景 客户端升级测试 3 修改方法 3.1 打开fiddler,工具栏-->T ...
- Hibernate中多种方式解除延迟加载
问题引发:因为dao使用load(),默认延迟加载的,当在biz关闭session之后,UI层无法获取对象的非id属性值 解决方案: 1.变成get,即时加载 2.用Hibernate.isIniti ...
- 解方程(NOIP2014)Warning!(前方高能!!)
原题传送门 一看这不是水题嘛. 枚举+乱搞..特别容易.... 然后a[i]取值范围出现了 当当当当~:|a[i]|<=10^10000!!!!! 我去,这是什么鬼.. 高精度? 然后默默算了算 ...
- scrapy爬取段子
scrapy.py 1.cmd运行scrapy shell http://www.baidu.com response.xpath('//div[@aa="bb"]') 找到需要匹 ...
- Error:Execution failed for task ':bearBabyClient:processDebugManifest'. > Manifest merger failed with multiple errors, see logs
具体报错如上: 在右侧中 大方块圈中的[com.android.support:support-v4:26.0.0-alpha1] 这个文件导致的,在这的清单文件第27行合并失败,让使用tools:r ...
- leetcode-Min Cost Climbing Stairs
题目: On a staircase, the i-th step has some non-negative cost cost[i] assigned (0 indexed). Once you ...
- 解决ASP.NET裁剪图片失真
//有的时候剪切图片时,出现图片失真的问题,是因为图片质量下降造成的 //按照指定的数据画出画板(位图) System.Drawing.Image imgPhoto = System.Drawing. ...
- 随手看的一本书《java微服务》,测试成功了其中的第一个样例
静态语言,JAVA应该多了解,结合微服务,DOCKER,再搞搞SPRING CLOUD,就能跟上时代了. 对了,链一个买书的地址: https://item.jd.com/12089180.html ...