运输层(3.运输控制协议TCP概述)

一、TCP的主要特点

(1)TCP是面向连接的运输层协议

        应用程序在使用TCP协议之前,必须先建立TCP连接。在数据传输完毕后,必须释放已经建立的TCP连接。

(2)每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点(一对一)。

(3)TCP提供可靠交付的服务

        通过TCP连接传送的数据,无差错、不丢失、不重复、并且按顺序到达。

(4)提供全双工通信

        允许双方的应用进程在任何时候都发送数据。TCP连接的两端都设有发送缓存和接收缓存,用来临时存放双向通信的数据。

(5)面向字节流

        TCP中的“流”指的是流入到进程或从进程流出的字节序列

        面向字节流的含义是:虽然应用程序和TCP的交互是一次一个数据块,但是TCP把应用程序交下来的数据仅仅看成是一连串无结构的字节流

        TCP 不保证接收方应用程序所收到的数据块和发送方应用程序所发出的数据块具有对应大小的关系

        但接收方应用程序收到的字节流必须和发送方应用程序发出的字节流完全一样

 

注意:

        TCP 连接是一条虚连接而不是一条真正的物理连接。

        TCP 对应用进程一次把多长的报文发送到TCP 的缓存中是不关心的。

        TCP 根据对方给出的窗口值和当前网络拥塞的程度来决定一个报文段应包含多少个字节(UDP 发送的报文长度是应用进程给出的)。

        TCP 可把太长的数据块划分短一些再传送。 nTCP 也可等待积累有足够多的字节后再构成报文段发送出去。

二、TCP的连接

        TCP 把连接作为最基本的抽象

        每一条 TCP 连接有两个端点

        TCP 连接的端点不是主机,不是主机的IP 地址,不是应用进程,也不是运输层的协议端口。TCP 连接的端点叫做套接字或插口

        端口号拼接到 IP 地址即构成了套接字

        每一条 TCP 连接唯一地被通信两端的两个端点(即两个套接字)所确定

                                套接字 socket = (IP地址 : 端口号)                    

        同一个 IP 地址可以有多个不同的 TCP 连接。

        同一个端口号也可以出现在多个不同的 TCP 连接中。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值