运输层简介

运输层的通信实体不再是主机,而是主机中的进程。运输层的通信是一台主机的进程和另一台主机的进程进行数据交换。

运输层作用

  • 运输层向上层的应用层提供通信服务
  • 运输层为进程提供端到端的通信

运输层协议

  • 传输控制协议(TCP):面向连接的可靠传输协议
  • 用户数据报协议(UDP):无连接的不可靠协议

应用层对UDP和TCP的使用

应用 应用层协议 运输层协议
域名解析 DNS UDP
文件传送 TFTP(简单文件传送协议) UDP
万维网 HTTP TCP
电子邮件 SMTP TCP
文件传送 FTP(文件传送协议) TCP

UDP

UDP,用户数据报协议(User Packet Protocol)。UDP在IP的数据报基础上只加入了很少的功能,包括复用分用和差错检测。它有以下的特点:

  1. 无连接:UDP在发送数据前不需要建立连接,这减少了建立连接和释放连接带来的开销
  2. 尽最大努力交付:UDP没有差错重传的机制,它只能尽最大努力交付数据,所以是不可靠传输。虽然没有重传机制导致了不可靠传输,但是这样也减少了主机需要维护的状态参数,减轻了主机的负担
  3. 面向报文:UDP将上层服务传递的报文加上首部后就能发送,它不会对数据进行拆分或合并
  4. 首部开销小:UDP报文的首部只有8字节
  5. 一对多、多对一、一对一通信

TCP

TCP,传输控制协议(Transport Controller Protocol)。TCP是比较复杂的协议,它加入了可靠传输、流量控制、拥塞控制的机制。

  1. 面向连接:TCP在发送数据之前要建立TCP连接,通信完成需要释放连接。TCP建立连接要经过三次握手的过程,释放连接要经过四次挥手
  2. 可靠传输:TCP通过确认报文、停止等待(自动重传)等方式实现了可靠传输
  3. 面向字节流:TCP会将应用层的数据划分成大小不等的数据块,数据块以字节为单位。TCP会将这些数据块封装后按序发送,但是不能保证数据块到达的顺序
  4. 点对点:因为建立连接,TCP只能进行端到端的通信

TCP与UDP对比

UDP TCP
有无连接 无连接 有连接
是否可靠 尽最大努力交付 可靠传输
传输方式 面向报文 面向字节流
端点 一对一、一对多 点对点
首部大小 首部小,仅8字节 首部开销大

运输层协议:TCP和UDP的更多相关文章

  1. 运输层协议TCP和UDP

    运输层协议TCP和UDP 一.用户数据报协议 UDP 1.1.UDP 概述 UDP 只在 IP 的数据报服务之上增加了很少一点的功能,即端口的功能和差错检测的功能. 虽然 UDP 用户数据报只能提供不 ...

  2. 运输层协议--TCP及UDP协议

    TCP及UDP协议 按照网络的五层分级结构来看,TCP及UDP位于运输层,故TCP及UDP是运输层协议.TCP协议--传输控制协议UDP协议--用户数据报协议 多路复用及多路分解 图多路复用及多路分解 ...

  3. 传输层协议TCP和UDP

    本文力图简洁,让读者对TCP和UDP有个初步的认知.闲话少说,现在开始吧.TCP和UDP都是传输层的协议.TCP通过三次握手建立可靠连接,对未送达的消息重新进行发送.UDP不建立连接而直接发送,对未送 ...

  4. 浅谈传输层协议TCP和UDP

    在当今因特网的层次结构中,传输层的协议主要有两种,其一为Transmission Control Protocol,即TCP:其二为User Datagram Protocol,即UDP. 1.TCP ...

  5. 网络编程协议(TCP和UDP协议,黏包问题)以及socketserver模块

    网络编程协议 1.osi七层模型 应用层  表示层  会话层  传输层  网络层  数据链路层  物理层 2.套接字 socket 有两类,一种基于文件类型,一种基于网络类型 3.Tcp和udp协议 ...

  6. 网络编程协议(TCP和UDP协议,粘包问题)以及socketserver模块

    网络编程协议 1.osi七层模型 应用层  表示层  会话层  传输层  网络层  数据链路层  物理层 2.套接字 socket 有两类,一种基于文件类型,一种基于网络类型 3.Tcp和udp协议 ...

  7. 常用传输层协议(tcp/ip+udp)与常用应用层协议简述(http)

    一.计算机网络体系结构 二.TCP与UDP差异 1.TCP是面向连接的可靠传输,UDP是面向无连接的不可靠传输 面向连接表现在3次握手,4次挥手:可靠传输表现在未进行4次挥手时的差错重传,超时重传: ...

  8. TCP/IP中的传输层协议TCP、UDP

    TCP提供可靠的通信传输,而UDP则常用于让广播和细节控制交给应用的通信传输. 传输层协议根据IP数据报判断最终的接收端应用程序. TCP/IP的众多应用协议大多以客户端/服务端的形式运行.客户端是请 ...

  9. 传输层协议TCP和UDP分析

    分析所用软件下载:Wireshark-win32-1.10.2.exe 阅读导览 1. 分析应用TCP协议,以及TCP链接管理 2. 分析应用UDP协议 分析要求 (1)TCP部分: 学习3CDaem ...

  10. 01网络编程(基础知识+OSI七层协议+TCP与UDP)

    目录 01 网络编程 一.软件开发架构 1.1 CS架构 1.2 BS架构 二.网络理论前戏 2.1 简介 2.2 常见硬件 三.OSI七层协议(五层) 3.1 七层协议 3.2 五层协议 3.3 知 ...

随机推荐

  1. LATEX学习和IEEE Tran模板介绍

    目录 软件的选择 IEEE 模板下载 模板正文 图 表格 公式 算法 参考文献 Latex学习网站:http://www.latexstudio.net/page/tex-documents/ IEE ...

  2. OpenFaaS实战之八:自制模板(maven+jdk8)

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  3. 那些 22 岁毕业做Android开发的人,他们 50 岁左右时的人生轨迹是怎样的?

    本人今年35了,已经干了14年程序员,是14年不是13年,因为我是专科毕业. 一直就是普普通通的程序员,特别纯的码农,从没做过管理岗位,并且很可能以后也是如此. 现在已经上有老下有小. 曾经在某著名互 ...

  4. 四、C#简单操作MinIO

    MinIO的官方网站非常详细,以下只是本人学习过程的整理 一.MinIO的基本概念 二.Windows安装与简单使用MinIO 三.Linux部署MinIO分布式集群 四.C#简单操作MinIO He ...

  5. xubuntu共享打印机

    by 无若 1.查看系统中的打印机lpstat -ssystem default destination: HP-Color-LaserJet-CP1215device for HP-Color-La ...

  6. 关于:org.apache.catalina.connector.ClientAbortException及getOutputStream() has already been called for this response的异常处理

    1.异常场景: 在进行将数据用word导出或者Excel导出的时候.抛出的异常getOutputStream() has already been called for this response 导 ...

  7. Openresty Lua协程调度机制

    写在前面 OpenResty(后面简称:OR)是一个基于Nginx和Lua的高性能Web平台,它内部集成大量的Lua API以及第三方模块,可以利用它快速搭建支持高并发.极具动态性和扩展性的Web应用 ...

  8. Clickhouse Docker集群部署

    写在前面 抽空来更新一下大数据的玩意儿了,起初架构选型的时候有考虑Hadoop那一套做数仓,但是Hadoop要求的服务器数量有点高,集群至少6台或以上,所以选择了Clickhouse(后面简称CH). ...

  9. kali虚拟机安装VMTools、更新源、安装docker、配置sqli-labs

    一.安装VMTools: 传送门:关于安装VMTools 跟其他版本的虚拟机安装VMTools没什么区别,也得连网(我是kali用dhcp开nat模式) 之后按照上面的链接根据博主的步骤一步一步来即可 ...

  10. Mysql报错注入之floor报错详解

    一.简述 利用 select count(*),(floor(rand(0)*2))x from table group by x,导致数据库报错,通过 concat 函数,连接注入语句与 floor ...