志在指尖
用双手敲打未来

tcp协议(主要功能是什么)

tcp协议

TCP即传输操控协议(TransmissionControlProtocol)是一种面向衔接的、牢靠的、基于字节省的传输层通讯协议。
TCP是为了在不牢靠的互联网上供给牢靠的端到端字节省而专门规划的一个传输协议。
互联网与单个网络有很大的不同,由于互联网的不同部分可能有截然不同的拓补结构、带宽、推迟、数据包巨细和其他参数。TCP的规划方针是能够动态地习惯互联网的这些特性,并且具备面向各种毛病的健壮性。
不同主机的使用层之间常常需求牢靠的、像管道相同的衔接,但是IP层不供给这样的流机制,而是供给不牢靠的包交流。
使用层向TCP层发送用于网间传输的、用8位字节表明的数据流,然后TCP把数据流分区成恰当长度的报文段(一般受计算衔接的网络的数据链路层的最大传输单元(MTU)的约束)。之后TCP把结果包传输给IP层,有它来通过网络将包传送给接纳端实体的TCP层。
TCP为了确保不发生丢包,就给每个包一个序号,一起序号也确保了传送到接纳端实体的包的按序接纳。然后
接纳端实体对已成功接纳到的包回一个相应的承认(ACK);如果发送端实体在合理的往返时延(RTT)内未接纳到承认,那么对应的数据包就被假设为已丢掉将会被进行重传。TCP用一个校验和函数来校验数据是否有误;在发送和接纳时都要计算校验。
每台支撑TCP的机器都有一个TCP传输实体。TCP实体能够时一个库进程、一个用户进程、或者内核的一部分。在所有这些情形下,它办理TCP流,以及与IP层之间的接口。TCP传输实体接纳本地进程的用户数据流,将他们分割成不超越64KB(实践上去掉IP和TCP头,一般不超越1460数据字节)的分段,每个分段以独自的IP数据报方法发送。当包含TCP数据的数据报抵达一台机器时,它们被递送给TCP传输实体,TCP传输实体重构出原始的字节省。为简化起见,我们有时候仅仅用TCP来代表TCP传输实体(一段软件)或者TCP协议(一组规矩)。依据上下文语义你应该能很清楚的推断出其实践含义。例如,在‘用户将数据提交给TCP’这句话中,很显然这里指的时TCP实体。
IP层并不确保数据报必定被正确的提交到接纳方,也不只是数据报的发送速度有多块。正是TCP担任纪要足够快的发送数据报,以便运用网络容量,但又不能引起网络阻塞:并且,TCP超时后,要重传没有递送的数据报。即便被正确递送的数据报,也可能存在过错的问题,这也是TCP的职责,它有必要把接纳到的数据报从头装配成正确的次序,简言之,TCP有必要供给牢靠性的良好性能,这正是大多数用户所期望的而IP又没有供给的功能。
二、主要特点
当使用层向TCP层发送用于网间传输的、用8位字节表明的数据流,TCP则把数据流分割成恰当长度的报文。之后TCP把数据包传递给IP层,由它来通过网络将包传送给接纳端实体的TCP层。
TCP是一种面向广域网的通讯协议,意图是在跨过多个网络通讯时,为两个通讯端点之间供给一条具有一下特点的通讯方法:
(1)基于流的方法;
(2)面向衔接;
(3)牢靠通讯方法;
(4)在网络状况不佳的时候尽量降低系统由于重传带来的带宽开销;
(5)通讯衔接维护是面向的两个端点的,而不考虑中间网段和节点。
为满意TCP协议的这些特点,TCP协议做了以下规定:
①数据分片:在发送端对用户数据进行分片,在接纳端进行重组,由TCP承认分片的巨细并操控分片和重组;
②抵达承认:接纳端接纳到分片数据时,依据分片数据序号向发送端发送一个承认;
③超时重发:发送方在发送分片时发动超时定时器,如果在定时器超时之后没有接纳到对应的承认,重发分片;
④滑动窗口:TCP衔接每一方的接纳缓冲空间巨细都固定,接纳端只允许另一端发送接纳端缓冲区所能接纳的数据,TCP在滑动窗口的基础上供给流量操控,避免较快主机致使较慢主机的缓冲区溢出;
⑤失序处理:作为IP数据报来传输的TCP分片抵达时可能会失序,TCP将对接纳的数据进行从头排序,将接纳到的数据以正确的次序交给使用层;
⑥重复处理:作为IP数据报来传输的TCP分片会发生重复,TCP的接纳端有必要丢掉重复的数据;
⑦数据校验:TCP将保持它首部和数据的校验和,这是一个端到端的校验和,意图是检测数据在传输进程中的任何变化。如果收到分片的校验和由过失,TCP将丢掉这个分片,并承认接纳到此报文段导致对端超时并重发。
三、工作方法
树立衔接
TCP是因特网中的传输层协议,运用三次握手协议树立衔接。当自动方发出SYN衔接恳求后,等待对方答复SYN+ACK,并终究对对方的SYN履行ACK承认。这种树立衔接的方法能够避免发生过错的衔接,TCP运用的流量操控协议是可便巨细的华东窗口协议。
TCP三次握手的进程如下:
(1)客户端发送SYN(SEQ=x)报文给服务端,进入SYN_SEND状况。
(2)服务端接纳SYN报文,回应一个SYN(SEQ=y)ACK(ACK=x+1)报文,进入SYN_RECV状况。
(3)客户端收到服务器端的SYN报文,回应一个ACK(ACK=y+1)报文,进入Established状况。
三次握手完成,TCP客户端和服务器端成功的树立衔接,能够开始传输数据了。如图:
衔接停止
树立一个衔接需求三次握手,而重一一个衔接要通过四次握手,这是由TCP的半封闭(half-close)形成的。具体进程如下图所示。
(1)某个使用进程首先调用close,称该端履行”自动封闭“(activeclose)。该端的TCP所以发送一个FIN分节,表明数据分发完毕。
(2)接纳到这个FIN的对端履行”被迫封闭“(passiveclose),这个FIN由TCP承认。
留意:FIN的接纳也作为一个文件结束符(end-of-file)传递给接纳端使用进程,放在已排队等候使用进程接纳的任何其他数据报之后,由于,FIN的接纳意味着金额手段使用进程相应衔接再无额外数据可接纳。
(3)一段时间后,接纳到这个文件结束符的使用进程将调用close封闭它的套接字,这导致它的TCP也发送一个FIN。
(4)接纳这个终究FIN的原发送端TCP(即履行自动封闭的那端)承认这个FIN。既然每个方向都需求一个FIN和一个ACK,因此一般需求4个分节。
努力,不是为了要感动谁,也不是要做给哪个人看,而是要让自己随时有才能跳出自己厌恶的圈子,并拥有挑选的权力。记住,用自己喜爱的方法过终身。

tcp

tcp协议主要功能是什么

功用是完成对数据报的承认、流量操控和网络拥塞。
1、在数据正确性与合法性上,TCP用一个校验和函数来检验数据是否有过错,在发送和接收时都要计算校验和;同时可以运用md5认证对数据进行加密。
2、在确保可靠性上,采用超时重传和捎带承认机制。
3、在流量操控上,采用滑动窗口协议,协议中规则,关于窗口内未经承认的分组需要重传。
TCP是一种面向广域网的通讯协议,目的是在跨过多个网络通讯时,为两个通讯端点之间供给一条具有下列特色的通讯方式:
1、基于流的方式。
2、面向衔接。
3、可靠通讯方式。
4、在网络状况不佳的时候尽量下降系统因为重传带来的带宽开支。
5、通讯衔接保护是面向通讯的两个端点的,而不考虑中心网段和节点。

未经允许不得转载:IT技术网站 » tcp协议(主要功能是什么)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载