TCP协议

传输控制协议,面向连接的、可靠的、基于流服务的传输层通信协议。
TCP协议使用的是超时重传、数据确认机制来保证数据传输的可靠性,确保数据正确的被接收,使用TCP通信双方必须先建立连接,并在内核中为该连接维持一些数据结构(读写缓冲区等),当通信结束后,释放缓冲区中的内核数据。

举一个栗子:
我们在打电话,就需要于先要和对方建立连接(拨号)。

TCP服务是基于数据流的。数据流是没有边界限制长度的,发送端可以一个字节一个字节的发送,接收端可以一个字节一个字节的接收。

例如:我们打电话时,不可能一句话说完。

UDP协议

用户数据报协议,无连接、不可靠、面向数据报服务。
即使双方没有建立连接,UDP也可以通过IP地址信息将数据报发送到接收方,不可靠说明UDP不能保证数据报正确的发送到对方,如果数据在中途丢失,或者接收方收到的数据不完整,UDP只是简单的通知应用程序发送失败。每个数据报都有一定的长度,超过长度将会被截断。

例如:快递,我们(接收端)和商家(发送端)不认识(没有建立连接),但是包裹(数据报)可以通过快递(UDP)的方式,发送到我们手里,快递公司检测到包裹丢了,或者包裹破损了,则会通知商家。包裹也有重量限制。

这样说感觉还是非常懵,那到底什么是TCP协议什么是UDP协议

TCP与UDP的使用场景

当我们想要访问一个网页时,网页的大小为2M,由于网络层最大支持的传输大小为65535个字节,相当于一次只能传输63KB大小的数据包,但是数据链路层支持最大的传输单元MTU为1500个字节(1KB多一点),所以,我们想要访问网站时,就需要对网站的数据包进行分段发送。TCP就是为分段发送提供服务的,需要建立会话,同时也支持可靠传输,以及流量控制。当一个数据包就能完成数据通信时以及在屏幕广播、多播与广播中使用UDP协议,不需要建立会话,不可靠传输,不需要流量控制。

那什么是可靠传输与流量控制呢?

  • 可靠传输。因为网络层主要是负责数据的转发,不负责数据的丢失。可靠传输就是保证数据能够安全送达。
    说白了就是,网络层主要是负责送快递的,但是网络层不保证快递能不能送到,可靠传输则表示,如果快递没送到,那你再给我送一次,直到我收到快递为止。
  • 流量控制。当发送端发送的速度与接收端接收的速度不匹配时,流量控制主要是调节两个速度匹配。
    举个栗子:你和别人打电话,对方语速很快,这时你就请求对方说慢点,这就是流量控制的思想。

计算机网络---TCP/UDP协议(一)相关推荐

  1. 【计算机网络】传输层 : 总结 ( TCP / UDP 协议 | 寻址与端口 | UDP 协议 | TCP 协议特点 | TCP 连接释放 | TCP 流量控制 | TCP 拥塞控制 ) ★★★

    文章目录 一.传输层 TCP / UDP 协议 ★ 二.寻址端口号 ★ 三.UDP 协议特点 四.UDP 协议首部格式 五.UDP 校验 六.TCP 协议 特点 ★ 七.TCP 报文段首部格式 八.T ...

  2. 最全的TCP/UDP 协议知识点整理

    关于计算机网络的基础知识,我前面写的两篇文章是入门文章,可以帮你构建一个计算机网络的基础架构,有了这个基础架构,后面的学习会很简单.下面是两篇文章的连接~~ 计算机网络体系结构与参考模型(1) 计算机 ...

  3. 什么是TCP/UDP协议?(超简单,一看就会)

    TCP/UDP协议做了什么? TCP/UDP协议处于计算机网络的第四层"传输层",负责传输数据包. 数据包怎么传?(UDP协议) TCP/UDP协议处于计算机网络的第四层" ...

  4. 网络编程—网络基础概览、socket,TCP/UDP协议

    网络基础概览 socket概览 socket模块-TCP/UDP的实现 TCP/UDP总结 网络基础概览 osi七层协议各层主要的协议 # 物理层传输电信号1010101010 # 数据链路层,以太网 ...

  5. 利用TCP/UDP 协议制作一个飞秋聊天工具

    视频操作演示: 利用TCP/UDP 协议制作一个飞秋聊天工具演示视频 int udp_broadcast(char const*argv[]) {//1.创建对象udp_socket = socket ...

  6. 网络层协议与应用及传输层TCP/UDP协议

    网络层协议与应用及传输层TCP/UDP协议 目录 一.IP数据包格式 二.ICMP协议 三.ARP协议及ARP工作原理 四.TCP协议及常用端口号 五.UDP协议及常用端口号 一.IP数据包格式 网络 ...

  7. TCP/UDP协议总结与应用层常见协议及端口

    TCP/UDP协议总结与应用层常见协议及端口 1.TCP协议 TCP协议概述 TCP的应用场景 TCP的特点 TCP的报文格式 TCP三次握手 TCP四次挥手 2.UDP协议 UDP概述 UDP的应用 ...

  8. QQ--基于TCP/UDP协议的通讯原理

    QQ是一个基于TCP/UDP协议的通讯软件  发送消息的时候是UDP打洞,登陆的时候使用HTTP~因为登陆服务器其实就是一个HTTP服 务器,只不过不是常用的那些,那个服务器是腾讯自行开发的!   一 ...

  9. 【计算机网络】利用WireShark分析TCP/UDP协议

    前期准备: IntelliJ IDEA 2021.1.3 (Ultimate Edition) Build #IU-211.7628.21, built on June 30, 2021 JDK 1. ...

最新文章

  1. ntdll.dll学习总结
  2. DL之DenseNet:DenseNet算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
  3. python对数的格式_python的log使用详解
  4. Java编写代理服务器(Burp拦截Demo)一
  5. 64位系统好不好用java_64位系统环境时Java的性能
  6. 数字图像处理 采样定理_数字图像处理基础知识总结
  7. opencv3.2.0形态学滤波之开运算、闭运算
  8. 关闭不必要动画,提升 Win 7 运行速度
  9. [高数][高昆轮][高等数学上][第二章-导数与微分]05.函数的微分
  10. K3 WISE,销售订单新增批号并能携带至销售出库单
  11. 解决myeclipse html页面乱码问题
  12. cd linux 官网,cdlinux
  13. JAVA实现PDF合并、拆分代码工具类
  14. mysql中有关视图的概念、操作及作用
  15. 新手gxf学python---万年历
  16. 电饼锅的样式图片价格_电饼铛款式平泉价格
  17. java自定义类加载器并观察类卸载过程
  18. 英语句子成分分析(二)--十大词类
  19. 如何租用网站服务器,如何租用网站服务器有什么需要留心?
  20. 查看已结束的中国大学MOOC课程

热门文章

  1. Java之注解的定义及使用
  2. cisco ADSL配置
  3. 【转载】socket as an IPC
  4. 各种协议在RFC中的编号
  5. Linux shell实例精讲 (一)
  6. 正反观点验证2010年10大安全挑战
  7. mysql 5.7 严格模式_mysql 5.7中严格模式的问题
  8. 为什么使用getrequestdispatcher跳转出现404_网站出现404错误时的处理方法
  9. 【工程项目经验】之多个静态库合并成一个
  10. 4月1号鸿蒙系统上线,4月1日太关键,鸿蒙迎来正式发布前的最后大考,华为将从此起飞...