TCP/IP协议——TCP协议

本文详细介绍了TCP协议的核心概念,包括三次握手建立连接、终止连接的过程,以及最大报文段长度的定义和作用。通过解析TCP段的组成,解释了其如何确保数据传输的可靠性和顺序性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<p>今天算是对了TCP协议有个肤浅的理解了!</p>
<p>尽管TCP和UDP都是一样的网络层IP,但是TCP却和UDP实现着不一样的服务,TCP是一个面向连接的,可靠地字节流服务!</p>
<p>面向连接是指:两个使用TCP的程序要建立一个TCP连接才能交换数据。</p>
<p>TCP以以下方式提供可靠性:</p>
<p>1)应用程序被分为TCP认为合适发送的数据块!</p>
<p>2)TCP发送一个数据段以后,它启动一个定时器,等待目的端确认收到这个数据段,超时将会重新发送这个数据段!</p>
<p>3)当TCP接收到发自TCP连接另一端的数据,他会发送一个确认!</p>
<p>4)TCP会保持他首部和数据的检验和!</p>
<p>5)既然TCP报文段可以作为IP数据包来传送,而IP数据报的到达可能会失序,因此TCP报文段的到达也可能会失序!</p>
<p>6)既然IP数据报会发生重复,那么TCP的接收端必定会丢弃重复的数据报!</p>
<p>7)TCP还提供流量控制。</p>
<p></p>
<p>每个TCP段都包含了源端和目的端的端口号和IP地址。</p>
<p></p>
<p>第一:TCP的链接的建立和终止</p>
<p>首先我们得知道几个符号的作用</p>
<p>SYN:同步序号</p>
<p>FIN:发送方完成数据发送</p>
<p>RST:复位连接</p>
<p>PSH:尽可能快的将数据发送往接受进程</p>
<p></p>
<p>TCP的三次握手:</p>
<p>1,客户进程发送一个SYN段指明客户打算链接的服务器端口,以及初始序号(ISN),并将TCP的SYN段为报文段1。</p>
<p>2,服务器发回包含服务器的初始序号的SYN报文段(报文段为2)作为应答。</p>
<p>3,客户必须将确认序号设置为服务器的ISN加1对服务器的SYN段加以确认(报文段3)。</p>
<p>这三个报文段完成连接的建立,这个过程就叫三次握手!</p>
<p></p>
<p>建立一个TCP链接需要三次握手,但是断开一个TCP链接则要四次握手:</p>
<p>1,首先是客户想服务器进程发送一个数据报文段FIN,</p>
<p>2,服务器进程收到这个报文段FIN,它发回一个ack,确认序号为收到的加1。</p>
<p>3,服务器向客户进程发送一个FIN,</p>
<p>4,和第二步一样!</p>
<p></p>
<p>TCP的最大报文段长度</p>
<p>首先我们解释一下什么是最大报文长度:表示TCP传往另一端的最大块数据长度!</p>
<p>当一个链接建立时,链接的双方都要通告各自的MSS大小!</p>
<p>有些系统是可以协商mss的大小长度的,但是有些不可以,如果一方不接受来自另一方的mss协商的话,那么就默认为536个字节,一般来说,如果没有分段发生,我们的mss还是越大越好,当然了mss亦可以限制一段的发送大小,以减少分片的发生!</p>
<p>(未完待续)</p>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值