tcp/ip原理(tcpip原理与技术)

http://www.itjxue.com  2023-01-27 05:56  来源:未知  点击次数: 

简述TCP/IP工作原理

TCP/IP模型包括:

● 网络层

● 网际层

● 传输层

● 应用层

一、网络层

是模型的最低层,负责将帧放进线路,或从线路中取下帧。

TCP/IP的网络层对应着OSI的物理层和数据链路层。这也就是为什么这一层包含物理通信介质和在这些介质上传送帧的通信协议。

二、网际层

网际层(互联网层):负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。

● ICMP网际控制消息协议:问题出现时向IP发送错误报告。

我们平时用的ping用它。

● IGMP网际分组管理协议:向路由器通知多播组成员的存在。

广播不能跨路由器,路由器是隔离广播的,但它隔离不了多播,它可以跨路由器。

● ARP地址解析协议:判断主机的硬件地址。

三、传输层

传输层是TCP/IP模型中非常特殊和重要的一层,它包括了OSI传输层、会话层、表示层和应用层的各部分功能,包括两个传输协议(TCP协议和UDP协议)在计算机之间提供通信对话。

四、应用层

应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。

TCP/ IP的工作原理是怎样的?

1、组成:应用层、传输层、网络层、链路层

2、各层主要功能:

应用层:负责向用户提供应用程序,比如HTTP、FTP、Telnet、DNS、SMTP等。

传输层:负责对报文进行分组和重组,并以TCP或UDP协议格式封装报文。

网络层:负责路由以及把分组报文发送给目标网络或主机。

链路层:负责封装和解封装IP报文,发送和接受ARP/RARP报文等。

扩展资料

OSI是开放系统互连参考模型 (Open System Interconnect 简称OSI),是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)联合制定的开放系统互连参考模型,为开放式互连信息系统提供了一种功能结构的框架。

它从低到高分别是:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

而TCP/IP简单来说就是OSI的简化版,把OSI的七层简化为了四层。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。

协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。

参考资料:百度百科 - TCP/IP协议

tcp/ip的工作原理

这部分简要介绍一下TCP/IP的内部结构,为讨论与互联网有关的安全问题打下基础。

TCP/IP协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如T1和X.25、以太网以及RS-232串行接口)之上。

确切地说,TCP/IP协议是一组包括TCP协议和IP协议,UDP(User Datagram Protocol)协议、ICMP(Internet Control Message Protocol)协议和其他一些协议的协议组。

CP/IP协议的组成

TCP/IP协议在一定程度上参考了OSI的体系结构。OSI模型共有七层,从下到上分别是物理层、数据链路层、网络层、运输层、会话层、表示层和应用层。

(1)应用层、表示层、会话层三个层次提供的服务相差不是很大,所以在TCP/IP协议中,它们被合并为应用层一个层次。

(2)由于运输层和网络层在网络协议中的地位十分重要,所以在TCP/IP协议中它们被作为独立的两个层次。

以上内容参考:百度百科-TCP/IP协议

TCP/IP模块的工作原理是什么?

网络传输被人为分层次 tcp/ip 是应用非常好的实际的 网络协议 tcp是在TCP/IP中 传输层 在那里将数据分段 然后向下给 IP在的网际层 那里打包 然后向下再 给数据链路层 封装层帧 不论是段还是包还是帧都包涵了要传去目标IP的信息 所以通过路由会没有差错的传给目的IP 知道IP地址赛

传到后在向上解开帧 包和段 把数据给用户

能理解赛

详细说下OSI及TCP/IP是什么及其原理?…

TCP/IP(Transmission Control Protocol/Internet Protocol)的简写,中文译名为传输控制协议/互联网络协议)协议是Internet最基本的协议,简单地说,就是由网络层的IP协议和传输层的TCP协议组成的。 没有什么原理就是一种通信协议

OSI是Open System Interconnection 的缩写,意为开放式系统互联参考模型。在OSI出现之前,计算机网络中存在众多的体系结构,其中以IBM公司的SNA(系统网络体系结构)和DEC公司的DNA(Digital Network Architecture)数字网络体系结构最为著名。为了解决不同体系结构的网络的互联问题,国际标准化组织ISO(注意不要与OSI搞混)于1981年制定了开放系统互连参考模型(Open System Interconnection Reference Model,OSI/RM)。这个模型把网络通信的工作分为7层,它们由低到高分别是物理层(Physical Layer),数据链路层(Data Link Layer),网络层(Network Layer),传输层(Transport Layer),会话层(Session Layer),表示层(Presentation Layer)和应用层(Application Layer)。第一层到第三层属于OSI参考模型的低三层,负责创建网络通信连接的链路;第四层到第七层为OSI参考模型的高四层,具体负责端到端的数据通信。每层完成一定的功能,每层都直接为其上层提供服务,并且所有层次都互相支持,而网络通信则可以自上而下(在发送端)或者自下而上(在接收端)双向进行。当然并不是每一通信都需要经过OSI的全部七层,有的甚至只需要双方对应的某一层即可。物理接口之间的转接,以及中继器与中继器之间的连接就只需在物理层中进行即可;而路由器与路由器之间的连接则只需经过网络层以下的三层即可。总的来说,双方的通信是在对等层次上进行的,不能在不对称层次上进行通信。

OSI 标准制定过程中采用的方法是将整个庞大而复杂的问题划分为若干个容易处理的小问题,这就是分层的体系结构办法。在OSI中,采用了三级抽象,既体系结构,服务定义,协议规格说明。

OSI划分层次的原则

网络中各结点都有相同的层次

不同结点相同层次具有相同的功能

同一结点相邻层间通过接口通信

每一层可以使用下层提供的服务,并向上层提供服务

不同结点的同等层间通过协议来实现对等层间的通信

OSI/RM分层结构

1.对等层实体间通信时信息的流动过程

对等层通信的实质:

对等层实体之间虚拟通信;下层向上层提供服务;实际通信在最底层完成在发送方数据由最高层逐渐向下层传递,到接收方数据由最低层逐渐向高层传递.

协议数据单元PDU

SI参考模型中,对等层协议之间交换的信息单元统称为协议数据单元(PDU,Protocol Data Unit)。

而传输层及以下各层的PDU另外还有各自特定的名称:

传输层——数据段(Segment)

网络层——分组(数据报)(Packet)

数据链路层——数据帧(Frame)

物理层——比特(Bit)

OSI的七层结构

第一层:物理层(PhysicalLayer),规定通信设备的机械的、电气的、功能的和规程的特性,用以建立、维护和拆除物理链路连接。具体地讲,机械特性规定了网络连接时所需接插件的规格尺寸、引脚数量和排列情况等;电气特性规定了在物理连接上传输bit流时线路上信号电平的大小、阻抗匹配、传输速率距离限制等;功能特性是指对各个信号先分配确切的信号含义,即定义了DTE和DCE之间各个线路的功能;规程特性定义了利用信号线进行bit流传输的一组操作规程,是指在物理连接的建立、维护、交换信息时,DTE和DCE双方在各电路上的动作系列。

在这一层,数据的单位称为比特(bit)。

属于物理层定义的典型规范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等。

物理层的主要功能:

为数据端设备提供传送数据的通路,数据通路可以是一个物理媒体,也可以是多个物理媒体连接而成.一次完整的数据传输,包括激活物理连接,传送数据,终止物理连接.所谓激活,就是不管有多少物理媒体参与,都要在通信的两个数据终端设备间连接起来,形成一条通路.

传输数据.物理层要形成适合数据传输需要的实体,为数据传送服务.一是要保证数据能在其上正确通过,二是要提供足够的带宽(带宽是指每秒钟内能通过的比特(BIT)数),以减少信道上的拥塞.传输数据的方式能满足点到点,一点到多点,串行或并行,半双工或全双工,同步或异步传输的需要.

完成物理层的一些管理工作.

第二层:数据链路层(DataLinkLayer):在物理层提供比特流服务的基础上,建立相邻结点之间的数据链路,通过差错控制提供数据帧(Frame)在信道上无差错的传输,并进行各电路上的动作系列。

数据链路层在不可靠的物理介质上提供可靠的传输。该层的作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。

在这一层,数据的单位称为帧(frame)。

数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等。

链路层的主要功能:

链路层是为网络层提供数据传送服务的,这种服务要依靠本层具备的功能来实现。链路层应具备如下功能:

链路连接的建立,拆除,分离。

帧定界和帧同步。链路层的数据传输单元是帧,协议不同,帧的长短和界面也有差别,但无论如何必须对帧进行定界。

顺序控制,指对帧的收发顺序的控制。

差错检测和恢复。还有链路标识,流量控制等等.差错检测多用方阵码校验和循环码校验来检测信道上数据的误码,而帧丢失等用序号检测.各种错误的恢复则常靠反馈重发技术来完成。

第三层是网络层(Network layer)

在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,也可能还要经过很多通信子网。网络层的任务就是选择合适的网间路由和交换结点, 确保数据及时传送。网络层将数据链路层提供的帧组成数据包,包中封装有网络层包头,其中含有逻辑地址信息- -源站点和目的站点地址的网络地址。

如果你在谈论一个IP地址,那么你是在处理第3层的问题,这是“数据包”问题,而不是第2层的“帧”。IP是第3层问题的一部分,此外还有一些路由协议和地址解析协议(ARP)。有关路由的一切事情都在第3层处理。地址解析和路由是3层的重要目的。网络层还可以实现拥塞控制、网际互连等功能。

在这一层,数据的单位称为数据包(packet)。

网络层协议的代表包括:IP、IPX、RIP、OSPF等。

网络层主要功能:

网络层为建立网络连接和为上层提供服务,应具备以下主要功能:

路由选择和中继

激活,终止网络连接

在一条数据链路上复用多条网络连接,多采取分时复用技术

差错检测与恢复

排序,流量控制

服务选择

网络管理

网络层标准简介

第四层是处理信息的传输层(Transport layer)。第4层的数据单元也称作数据包(packets)。但是,当你谈论TCP等具体的协议时又有特殊的叫法,TCP的数据单元称为段(segments)而UDP协议的数据单元称为“数据报(datagrams)”。这个层负责获取全部信息,因此,它必须跟踪数据单元碎片、乱序到达的数据包和其它在传输过程中可能发生的危险。第4层为上层提供端到端(最终用户到最终用户)的透明的、可靠的数据传输服务。所谓透明的传输是指在通信过程中传输层对上层屏蔽了通信传输系统的具体细节。

传输层协议的代表包括:TCP、UDP、SPX等。

传输层是两台计算机经过网络进行数据通信时,第一个端到端的层次,具有缓冲作用。当网络层服务质量不能满足要求时,它将服务加以提高,以满足高层的要求;当网络层服务质量较好时,它只用很少的工作。传输层还可进行复用,即在一个网络连接上创建多个逻辑连接。 传输层也称为运输层.传输层只存在于端开放系统中,是介于低3层通信子网系统和高3层之间的一层,但是很重要的一层.因为它是源端到目的端对数据传送进行控制从低到高的最后一层.

有一个既存事实,即世界上各种通信子网在性能上存在着很大差异.例如电话交换网,分组交换网,公用数据交换网,局域网等通信子网都可互连,但它们提供的吞吐量,传输速率,数据延迟通信费用各不相同.对于会话层来说,却要求有一性能恒定的界面.传输层就承担了这一功能.它采用分流/合流,复用/介复用技术来调节上述通信子网的差异,使会话层感受不到.

此外传输层还要具备差错恢复,流量控制等功能,以此对会话层屏蔽通信子网在这些方面的细节与差异.传输层面对的数据对象已不是网络地址和主机地址,而是和会话层的界面端口.上述功能的最终目的是为会话提供可靠的,无误的数据传输.传输层的服务一般要经历传输连接建立阶段,数据传送阶段,传输连接释放阶段3个阶段才算完成一个完整的服务过程.而在数据传送阶段又分为一般数据传送和加速数据传送两种。传输层服务分成5种类型.基本可以满足对传送质量,传送速度,传送费用的各种不同需要.传输层的协议标准有以下几种:

第五层是会话层(Session layer)

这一层也可以称为会晤层或对话层,在会话层及以上的高层次中,数据传送的单位不再另外命名,统称为报文。会话层不参与具体的传输,它提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制。如服务器验证用户登录便是由会话层完成的。

会话层提供的服务可使应用建立和维持会话,并能使会话获得同步。会话层使用校验点可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。会话层,表示层,应用层构成开放系统的高3层,面对应用进程提供分布处理,对话管理,信息表示,恢复最后的差错等. 会话层同样要担负应用进程服务要求,而运输层不能完成的那部分工作,给运输层功能差距以弥补.主要的功能是对话管理,数据流同步和重新同步。要完成这些功能,需要由大量的服务单元功能组合,已经制定的功能单元已有几十种.现将会话层主要功能介绍如下.

为会话实体间建立连接。为给两个对等会话服务用户建立一个会话连接,应该做如下几项工作:

将会话地址映射为运输地址

选择需要的运输服务质量参数(QOS)

对会话参数进行协商

识别各个会话连接

传送有限的透明用户数据

数据传输阶段

这个阶段是在两个会话用户之间实现有组织的,同步的数据传输.用户数据单元为SSDU,而协议数据单元为SPDU.会话用户之间的数据传送过程是将SSDU转变成SPDU进行的.

连接释放

连接释放是通过"有序释放","废弃","有限量透明用户数据传送"等功能单元来释放会话连接的.会话层标准为了使会话连接建立阶段能进行功能协商,也为了便于其它国际标准参考和引用,定义了12种功能单元.各个系统可根据自身情况和需要,以核心功能服务单元为基础,选配其他功能单元组成合理的会话服务子集.会话层的主要标准有"DIS8236:会话服务定义"和"DIS8237:会话协议规范".

第六层是表示层(Presentation layer)

这一层主要解决用户信息的语法表示问题。它将欲交换的数据从适合于某一用户的抽象语法,转换为适合于OSI系统内部使用的传送语法。即提供格式化的表示和转换数据服务。数据的压缩和解压缩, 加密和解密等工作都由表示层负责。例如图像格式的显示,就是由位于表示层的协议来支持。

第七层应用层(Application layer),应用层为操作系统或网络应用程序提供访问网络服务的接口。

应用层协议的代表包括:Telnet、FTP、HTTP、SNMP等。

通过 OSI 层,信息可以从一台计算机的软件应用程序传输到另一台的应用程序上。例如,计算机 A 上的应用程序要将信息发送到计算机 B 的应用程序,则计算机 A 中的应用程序需要将信息先发送到其应用层(第七层),然后此层将信息发送到表示层(第六层),表示层将数据转送到会话层(第五层),如此继续,直至物理层(第一层)。在物理层,数据被放置在物理网络媒介中并被发送至计算机 B 。计算机 B 的物理层接收来自物理媒介的数据,然后将信息向上发送至数据链路层(第二层),数据链路层再转送给网络层,依次继续直到信息到达计算机 B 的应用层。最后,计算机 B 的应用层再将信息传送给应用程序接收端,从而完成通信过程。下面图示说明了这一过程。

OSI 的七层运用各种各样的控制信息来和其他计算机系统的对应层进行通信。这些控制信息包含特殊的请求和说明,它们在对应的 OSI 层间进行交换。每一层数据的头和尾是两个携带控制信息的基本形式。

对于从上一层传送下来的数据,附加在前面的控制信息称为头,附加在后面的控制信息称为尾。然而,在对来自上一层数据增加协议头和协议尾,对一个 OSI 层来说并不是必需的。

当数据在各层间传送时,每一层都可以在数据上增加头和尾,而这些数据已经包含了上一层增加的头和尾。协议头包含了有关层与层间的通信信息。头、尾以及数据是相关联的概念,它们取决于分析信息单元的协议层。例如,传输层头包含了只有传输层可以看到的信息,传输层下面的其他层只将此头作为数据的一部分传递。对于网络层,一个信息单元由第三层的头和数据组成。对于数据链路层,经网络层向下传递的所有信息即第三层头和数据都被看作是数据。换句话说,在给定的某一 OSI 层,信息单元的数据部分包含来自于所有上层的头和尾以及数据,这称之为封装。

例如,如果计算机 A 要将应用程序中的某数据发送至计算机 B ,数据首先传送至应用层。 计算机 A 的应用层通过在数据上添加协议头来和计算机 B 的应用层通信。所形成的信息单元包含协议头、数据、可能还有协议尾,被发送至表示层,表示层再添加为计算机 B 的表示层所理解的控制信息的协议头。信息单元的大小随着每一层协议头和协议尾的添加而增加,这些协议头和协议尾包含了计算机 B 的对应层要使用的控制信息。在物理层,整个信息单元通过网络介质传输。

计算机 B 中的物理层收到信息单元并将其传送至数据链路层;然后 B 中的数据链路层读取计算机 A 的数据链路层添加的协议头中的控制信息;然后去除协议头和协议尾,剩余部分被传送至网络层。每一层执行相同的动作:从对应层读取协议头和协议尾,并去除,再将剩余信息发送至上一层。应用层执行完这些动作后,数据就被传送至计算机 B 中的应用程序,这些数据和计算机 A 的应用程序所发送的完全相同 。

一个 OSI 层与另一层之间的通信是利用第二层提供的服务完成的。相邻层提供的服务帮助一 OSI 层与另一计算机系统的对应层进行通信。一个 OSI 模型的特定层通常是与另外三个 OSI 层联系:与之直接相邻的上一层和下一层,还有目标联网计算机系统的对应层。例如,计算机 A 的数据链路层应与其网络层,物理层以及计算机 B 的数据链路层进行通信。

OSI模型与TCP/IP模型的比较

TCP/IP模型实际上是OSI模型的一个浓缩版本,它只有四个层次:

1.应用层

2.运输层

3.网际层

4.网络接口层

与OSI功能相比:

应用层对应着OSI的 应用层 表示层 会话层

运输层对应着OSI的传输层

网际层对应着OSI的网络层

网络接口层对应着OSI的数据链路层和物理层[编辑本段]2 .

Open Source Initiative(简称OSI,有译作开放源代码促进会、开放原始码组织)是一个旨在推动开源软件发展的非盈利组织。

计算机网络TCP/IP等相关协议与原理

网络分层(由下到上):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。

重点在: 物理层、数据链路层(这两层需要了解基本的原理)、网络层、传输层(这两层需要了解功能作用,原理和相关的一些协议)、应用层(http协议)。

开始之前先跟大家说一下协议,很多人不知道协议是什么,尤其是刚接触这方面东西的时候,一听协议,感觉很吊的样子,但是又不知其所云,其实,协议可以理解为:一个双方通信需要共同遵守的规范。

记住,在网络分层协议中,所有下层的协议的作用就是为了上层服务,谨记!

接下来,我跟大家一一道来,首先登场的是物理层。

这一层主要就是跟硬件打交道,这一层也是所有上层的基础。

数据链路层强调的是一种传输规范,这是指什么呢?说白了,就是指每次传输的最大容量(最大传输单元),数据组织结构(以太网帧的概念)、传输的目的地等。

MAC地址:烧录在网卡ROM中的一串数字,长度48bit。

分组交换:较大数组分割为较小数组,依次发送。

原因是数据链路层有不定长度的最大传输单元。

以太网的帧的概念:前导码(8字节)+本体(首部+数据+FCS)

原理:依靠MAC地址决定向哪个端发送数据,需要“转发表”。

转发表是交换机自动学习得到的。

作用:保证不同数据链路层下数据的可达性。

ARP协议(获取MAC地址)和ICMP协议(数据发送异常通知)

作用:识别对端信息的地址。地址为32位正整数表示,分为四个部分,每个部分由8位整数组成。说白了,是识别要传输目的地的地址。

每位对应十进制范围:0-255。

[注]:网络标识和主机标识是为了寻址而发明。

A类:

第一位为“0”的地址,前8位为网络标识,0.0.0.0-127.0.0.0是A类IP地址的理论范围。

B类:

前两位为“10”的地址,前16位是网络标识,128.0.0.0-191.255.0.0,主机标识16位。

C类:

前三位为“110”的地址。前24位网络标识,192.0.0.0-223.255.255.0,主机标识为8位。

D类:

前4位为“1110”的地址。网络标识为32位,没有主机标识。

IP地址长度仅可表达43亿左右的主机数目,(区分网络标识和主机标识)共32位(一段连续的0和一段连续的1)组成,1的长度就表示网络标识的长度。

子网掩码的作用是区分IP地址是否在同一子网内。

分组数据发送到目标地址的功能,持有路由控制表,它在路由控制表中查找目标IP地址对应的下一个路由器地址。

源主机---网卡---路由器1(路由器控制表)---路由器2---网卡---目标主机

IP协议最大包为2的16次幂,等于65536.

接下来介绍几个IP协议相关的协议或技术:

将域名转化为IP地址(域名也是分层处理请求的,每一层都有对应的DNS服务器)。

通过目标IP地址,定位下一个接收数据包的网络设备(主机或路由器)的MAC地址。

在数据链路层发送广播,如果没有ARP技术,就没有办法穿透中间的服务器(ARP请求+ARP应答)。

NAT:用于将局域网中的私有地址转换为全局IP地址的技术。

每个路由器只有一个对外的全局IP地址,如果一个内网主机都向外通讯,怎么办?

就要使用到NATP技术,可转为TCP和UDP端口号。

不同的内网IP被转换成同一个公共的IP,但是NAPT技术可以使用不同的端口加以区分。

NAT和NAPT都需要路由器内部维护一张转换表。

举例:TCP首次SYN时,会生成这个表,关闭连接时会发出FIN包,收到这个包应答时转换表会被删除。

定义:实现应用程序之间的通信。

TCP:面向有连接的协议,建立连接需要3步,关闭连接需要4步。

具备数据重传、流量控制等功能,能正确处理丢包功能并有效利用宽带。

UDP:比较适合做实时视频和音频,效率比TCP高。

TCP有5个要素:源IP地址、目标IP地址、源端口号、目标端口号、协议号,同一台机器的端口号可以区分为不同的应用程序。

校验和=源IP地址(IP协议首部)+目标IP地址(IP协议首部)+源端口+目标端口

包长度=首部长度+数据长度

应该可以从下图看出来,TCP的首部比UDP的首部要复杂的多,所以也一定会影响的传输的速度和效率。

简单介绍一下首部的相关参数:

序列号:发送数据的位置

确认应答号:下一次应用接收到的数据的序列号

数据偏移:TCP首部的长度,单位为4字节。

控制位:长度为8位。

窗口大小:用于表示从应答号开始能够接受多少个8位字节。

紧急指针:尽在URG控制位为1时有效,表示紧急数据的末尾在TCP数据部分中的位置。

接下来最重要的一个技术点来了:

以下是通俗话解释连接和断开过程:

建立连接的过程:

1.client:我要建立连接。

2.server:我知道你要建立连接了,我这边没问题。

3.client:我了解你知道我要建立连接了,开始通信吧!

结束连接的过程:

1.client:我要关闭连接了

2.server:你那边可以关闭了

3.server:我这边也准备关闭了

4.client:我已关闭,你可以关闭了

[注]:连接是双方面的,所以关闭也是要自行关闭的。

数据包重发:保证ACK的值和发送方下次发送数据包的序列号相等。

接收方通过TCP首部中的控制位SYN判断这个数据是否曾经接收过?接收过就会舍弃。

重传超时时间(RTO)动态改变,略大于连接往返时间(RTT),RTO有自己的估算公式

定义:无需等待ACK,可以发送的最大数量。(窗口大小由接收端控制)

作用:为了解决发送数据包后,直至ACK确认返回之前,发送端都无法在进行发送的问题。

定义:接收端有缓存区数据溢出(如果窗口较大)

通俗一点的意思就是让发送方慢一点,免得接收方接收不过来。

TCP会慢启动算法得出窗口的大小,对发送数据量进行控制。

发送方拥有一个拥塞窗口,对发送的数据量进行控制。

TCP协议中的窗口是指:发送方和接收方窗口中的最小值。

1.通讯开始,发送方窗口为1。每收到一个ACK确认后,拥塞窗口翻倍。

2.由于指数级增长快,很快就会出现确认包超时。

3.设置慢启动阈值,它的值为拥塞窗口的大小的一半。

4.将拥塞窗口大小设置为1,重新进入慢启动过程。

5.慢启动阈值存在,当拥塞窗口大小达到阈值时,不再翻倍,而是线性增长。

6.随窗口大小的不断增长,可以收到三次重复的ACK,进入“快速重发”阶段。

7.TCp将慢启动阈值设置为当前拥塞窗大小的一半,再将拥塞窗口大小设成阈值大小。

8.拥塞窗口又会线性增加,直至下一次出现3次ACK或者超时。

(责任编辑:IT教学网)

更多

推荐图片影音文章