初识TCP:传输控制协议
2015-11-03 20:44
435 查看
我们总是提到TCP与UDP,因此我们对于它们大概有所了解.相信大家肯定都知道:TCP和UDP都使用相同的网络层(IP),但TCP向应用层提供一种面向连接的并可靠的字节流服务,UDP则向服务层提供面向数据报的,同时是不可靠的.
下面介绍TCP两个特点.
特点一:面向连接
面向连接意味着两个使用TCP的应用,在彼此交换数据之前必须先建立一个TCP连接.这其实就像我们打电话一样,先拨号码振铃通知对方,等待对方接通电话,然后说明自己是谁.
特点二:可靠性
可靠性将从以下几个方面体现:
应用数据被分割成TCP认为最适合发送的数据块.由TCP传递给IP的信息单位称为报文段或段(segment).
当TCP发出一个段后,他启动一个定时器,等待目的端确认收到这个报文段.
当TCP收到发自TCP收到连接另一端的数据,他将发送一个确认.这个确认并不是立即发送,通常将推迟几分之一秒.
TCP将保持它首部和数据校验和.
因为TCP报文段作为IP数据报来传输,而IP数据包的到达可能会失序,因此TCP报文段的到达也可能会失序.如果必要,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层.
既然IP数据报会产生重复,TCP的接收端必须丢弃重复的数据.
TCP还能提供流量控制.TCP连接的每一方都有固定大小的缓冲空间.
下面我们一起来看看TCP数据报首部:
注:上图来自网络.
具体介绍稍后再写 -.-
下面介绍TCP两个特点.
特点一:面向连接
面向连接意味着两个使用TCP的应用,在彼此交换数据之前必须先建立一个TCP连接.这其实就像我们打电话一样,先拨号码振铃通知对方,等待对方接通电话,然后说明自己是谁.
特点二:可靠性
可靠性将从以下几个方面体现:
应用数据被分割成TCP认为最适合发送的数据块.由TCP传递给IP的信息单位称为报文段或段(segment).
当TCP发出一个段后,他启动一个定时器,等待目的端确认收到这个报文段.
当TCP收到发自TCP收到连接另一端的数据,他将发送一个确认.这个确认并不是立即发送,通常将推迟几分之一秒.
TCP将保持它首部和数据校验和.
因为TCP报文段作为IP数据报来传输,而IP数据包的到达可能会失序,因此TCP报文段的到达也可能会失序.如果必要,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层.
既然IP数据报会产生重复,TCP的接收端必须丢弃重复的数据.
TCP还能提供流量控制.TCP连接的每一方都有固定大小的缓冲空间.
下面我们一起来看看TCP数据报首部:
注:上图来自网络.
具体介绍稍后再写 -.-
相关文章推荐
- 解决虚拟机vmware中REDHAT不能上网问题。
- failed to open stream: HTTP request failed!
- HTTP/1.1协议的curl 返回 HTTP/1.1 100 Continue 加上header 加上body
- iOS开发网络数据之AFNetworking使用
- iOS开发网络数据之AFNetworking使用
- CentOS网络配置
- 判断当前网络
- HttpClient教程 基本原理
- VMware网络连接模式:Bridged、NAT、Host-only区别
- HttpClient教程 前言
- 在IIS上启用Gzip压缩(HTTP压缩)
- 【UKIEPC2015 C】【STL set map stringstream】Conversation Log 网络审查 被所有人都说过的话 map套set法+人哈希法
- HTTP协议详解
- VS2005通过网络连接CE设备进行调试开发
- android开发游记:封装http请求,快速实现网络加载
- HTTP错误代码详细介绍
- CentOS 7网络配置
- 网络TCP/UDP编程学习
- android中进行https连接的方式
- HTTP 的get方法