文章目录

  • 一、TCP/IP协议簇的传输层协议:
    • 1、TCP和UDP
    • 2、TCP报文段
  • 二、TCP的“三次握手”和“四次挥手”
    • 1、“三次握手”
    • 2、“四次挥手”

一、TCP/IP协议簇的传输层协议:

1、TCP和UDP

TCP(Transmission Control Protocol):传输控制协议
面对连接的,可靠的进程到进程通信的协议。TCP提供全双工服务,即数据可在同一时间双向传输,每个TCP都有发送缓存和接受缓存,用来临时存储数据。(通信双方之间在进行通信之前要先建立连接,例如打电话)。
UDP(User Datagram Protocaol):用户数据报协议
是无连接、不保证可靠性的传输层协议,也就是说发送端不关心发送的数据是否到达目标主机、数据是否出错等,收到数据的主机也不会告诉发送方是否收到了数据,它的可靠性由上层协议来保障。(传输数据速度更快、效率更高)

2、TCP报文段


1)源端口号:发送方进程对应的端口号。
2)目标端口号:对应的是接收端的进程的端口号。
3)序号:发送端为每个字节进行编号,便于接受端正确重组。
4)确认号:用于确认发送端的信息。这个是用来告诉发送端这个序号之前的数据段都已经收到了,如确认号是N,就表示前N-1个数据段都已收到。
5)首部长度:用它可以确定TCP首部数据结构的字节长度。一般情况下TCP首部是20字节,但首部长度最大可以扩展为60字节。
6)保留:作为扩展位,目前没有用到。
7)控制位
URG:紧急位。紧急指针有效位。
ACK:确认位。只有当ACK=1时,确认序列号字段才有效;当ACK=0 时,确认号字段无效。
PSH:急迫位。标志位为1时,要求接收方尽快将数据段送达应用层。
RST:重置位。当RST值为1时,通知重新建立TCP连接。
SYN:同步(连接)位。同步序号位,TCP需要建立连接时将这个值设为1。
FIN:断开位。当TCP完成数据传输需要断开连接时,提出断开连接的一方将这个值设为1。
8)窗口大小:说明本地可接收数据段的数目。这个值的大小是可变的,当网络通畅时接收端响应消息会将这个窗口值变大以加快传输速度,当网络不稳定时减小这个值可保证网络数据的可靠传输,TCP中的流量控制机制就是依靠变化窗口的大小实现的。比如下载速度从一开始的几KB逐渐提升到几MB 的过程。
9)校验和:用来做差错控制。字段检验的范围包括首部和数据这两部分。数据段在发送时和到达目的地时会进行校验和计算,若这两次的校验和一致,则说明数据基本是正确的,否则将认为该数据已被破坏,接收端将丢弃该数据。
10)紧急指针:和URG配合使用,当URG=1时有效。
11)选项:在TCP首部可以有多达40字节的可选信息.例如:最大报文段长度MSS(Maximum Segment Size).MSS告诉对方TCP:“我的缓存所能接收的报文段的数据字段的最大长度是MSS个字节”。

二、TCP的“三次握手”和“四次挥手”

1、“三次握手”


1)PC1向PC2发出建立连接的请求,TCP的SYN为1,其他五个控制位为0

2)PC2收到请求,回复信息(包括向PC1回复的确认信息和建立连接的请求)
回复的确认信息:TCP的ACK控制位为1,其他五个为0,确认序列号是PC1的初始序列号加1
建立连接的请求:TCP的SYN控制位为1,其他五个为0

3)PC1收到PC2的回复信息(请求和确认),也回复一个确认信息,TCP的ACK控制位为1,其他五个为0,确认序列号是PC2的初始序列号加1

2、“四次挥手”


1)PC1向PC2发送FIN和ACK位置1的TCP报文段

2)PC2向PC1返回ACK位置1的TCP报文段,PC1收到后,实现半关闭状态(PC1断开了与PC2的连接,但PC2没有断开和PC1的连接)

3)PC2向PC1发送FIN和ACK位置1的TCP报文段

4)PC1向PC2返回ACK位置1的TCP报文段

网络基础之传输层协议介绍(“三次握手”和“四次挥手”)相关推荐

  1. 网络基础2-3(TCP协议,三次握手,四次挥手,TIME_WAIT状态的作用,TCP如何保证可靠传输,TCP连接中状态转化,滑动窗口,流量控制,快速重传,拥塞窗口,延迟应答,捎带应答,粘包问题)

    TCP协议 TCP协议概念 TCP全称为 "传输控制协议(Transmission Control Protocol"). 人如其名, 要对数据的传输进行一个详细的控制 TCP协议 ...

  2. 划重点 传输层协议 tcp三次握手和四次挥手

    文章目录 传输层的协议 1.TCP/IP协议组的传输层协议 2. TCP报文段 3.TCP建立连接的过程 3.2 TCP常用端口号及其功能 4.UDP协议 4.1 UDP报文的首部格式 4.2 UDP ...

  3. 计算机网络学习笔记(七)——传输层、TCP三次握手、四次挥手、TCP流量控制、大总结

    文章目录 前言 概念 一.传输层概述 二.传输层问题 三.端到端寻址 四.TCP三次握手和四次挥手 (一)三次握手建立连接 (二)四次挥手拆除连接 五.带拥塞的TCP流量控制 六.传输层实例 计网大总 ...

  4. TCP协议的三次握手和四次挥手

    转自:http://uule.iteye.com/blog/2213562 TCP协议的三次握手和四次挥手 博客分类: http/tcp TCP/IP协议三次握手与四次握手流程解析 Http协议三次握 ...

  5. 常见TCP/IP、HTTP协议以及三次握手和四次挥手

    面试常见TCP/IP.HTTP协议以及三次握手和四次挥手 IP(Internet Protocol):网际协议 IP协议是用于将多个包交换网络连接起来的,它在源地址和目的地址之间传送一种称之为数据包的 ...

  6. TCP协议的三次握手与四次挥手

    tcp协议的三次握手和四次挥手 三次握手: 第一次握手: 客户端发起一个链接(SYN) 第二次握手: 服务端就会返回一条(ACK)确认信息,同时服务端也会向客户端发起一个链接请求(SYN),此二者可合 ...

  7. 计算机网络【UDP与TCP协议(三次握手、四次挥手)】

    计算机网络[UDP与TCP协议(三次握手.四次挥手)]

  8. 网络架构,七层协议,三次握手四次挥手,socket套接字简单编程

    一.单机架构 应用领域: 植物大战僵尸 office 二.CS架构 应用领域: QQ 大型网络游戏 计算机发展初期用户去取数据,直接就去主机拿,从这里开始就分出了客户端和服务端. 客户端:用户安装的软 ...

  9. 网络协议-网络分层、TCP/UDP、TCP三次握手和四次挥手

    网络的五层划分是什么? 应用层,常见协议:HTTP.FTP 传输层,常见协议:TCP.UDP 网络层,常见协议:IP 链路层 物理层 TCP 和 UDP 的区别是什么 TCP/UDP 都属于传输层的协 ...

最新文章

  1. 黄聪:C# webBrowser控件禁用alert,confirm之类的弹窗解决方案
  2. 刘夏真的简历中国科学院计算机所,专家人才库数据----中国科学院计算技术研究所...
  3. Linux环境变量的修改(永久,暂时)
  4. 34.11. 视图、存储过程、函数
  5. 运用shell,python自动下载linux系统运维
  6. 虚拟化简化数据中心管理
  7. Codeforces1106F 【BSGS】【矩阵快速幂】【exgcd】
  8. python基础篇--从零开始(下)
  9. c语言在线读程序,用C语言编写简单程序.doc
  10. Java 文件传输 (TCP、UDP)
  11. php网上阅卷源码,翰林金榜网上阅卷
  12. 美国免费为全世界提供GPS服务,为什么中国还要搞“北斗”?
  13. 雕虫小技 - 签名图片生成器
  14. python中正方形内切园_python画出三角形外接圆和内切圆的方法
  15. 联想服务器装系统极慢,联想win10系统安装版重装后运行速度变慢了
  16. html等待,休眠代码,HTML DOM closest()用法及代码示例
  17. kail详细安装教程
  18. jetson xavier nx安装ROS Melodic
  19. POI导出Excel(二)
  20. 灰色预测之GM(1,1),教你快速上手数学建模!

热门文章

  1. GBase 8s 基本语法
  2. python模拟登录163邮箱_python模拟登陆163邮箱并下载邮件内容(第三版代码片段)
  3. MySQL之正则表达式
  4. jsPlumb使用小技巧
  5. 以太网通信(1)UDP —— 数据发送
  6. 虚拟机soft lockup CPU死锁问题
  7. Binomial Heap
  8. 解读《欧洲新工业战略》:三个愿景与三大策略
  9. Dungeon Master POJ - 2251 BFS
  10. 2022上海市安全员C证考试题库模拟考试平台操作