一、传输层的功能是建立端口到端口的通信

二、TCP协议

1、可靠传输,TCP数据包没有长度限制,理论上可以无限长,但是为了保证网络的效率,通常TCP数据包的长度不会超过IP数据包的长度,以确保单个TCP数据包不必再分割。

2、tcp报文格式:

3、tcp的三次握手与四次挥手

三次握手,建立连接,四次挥手拆除连接

为什么建立连接三次,而拆除连接需要四次?

因为建立连接的时候服务端可以ack确认信息和请求信息一次发送过去,但是拆除连接的时候如果也合并一次发过去,可能会造成服务端到客户端传送数据中断,因为响应客户端要求

拆除连接的时候,服务端到客户端发送数据并不一定结束,只有结束的时候服务端再发起一次请求,这样才能保证数据完整,

三、udp协议

1、不可靠传输,

2、传输的时候不需要事先建立连接,只要知道目的方的ip和端口就可以,

3、不需要传输确认,

四、TCP与UDP的比较

1、差异,tcp需要实现建立连接,是可靠性传输,数据传输需要确认,得不到确认会重传

udp发送数据前不需要建立连接,是不可靠性传输,不需要确认

2、适用场景:

tcp适用于对可靠性要求比较高的应用,例如:咱们平常使用的ftp,http等应用,但是会牺牲一些传输效率,

udp适用于对传输效率要求比较高的应用,例如,视频直播,dns等等,

转载于:https://www.cnblogs.com/xudachen/p/8722722.html

Python--网络编程-----传输层tcp/udp协议相关推荐

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

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

  2. 传输层 - TCP / UDP 协议详解

    我是目录: 1.UDP协议: 2.TCP协议: (1)TCP协议段格式: (2)确认应答(ACK)机制 (3)超时重传机制: (4)连接管理机制(三次握手.四次挥手) (5)滑动窗口: (6)流量控制 ...

  3. 【python网络编程】创建TCP/UDP服务器进行客户端/服务器间通信

    客户端/服务器网络编程介绍 套接字:通信端点 实例:客户端发送数据,接收服务器返回的时间戳 用Python 编写FTP 客户端程序 客户端/服务器网络编程介绍 软件服务器也运行在一块硬件之上,但是没有 ...

  4. 传输层TCP/UDP协议

    可靠的TCP协议(传输层) 1)  TCP封包结构如下图: 各字段的含义为: 封包序号:记录每个封包的序号,当TCP封包大于IP封包的长度时,TCP封包就需要拆分成更小的包,来下发给网络层,通过该字段 ...

  5. 【JavaEE】TCP的五层协议栈之应用层与传输层的UDP协议

    文章目录 一.应用层 1.简单介绍 2.xml(Simple Object Access Protocol ) 2.json(JavaScript Object Notation) 4.protobu ...

  6. 网络原理 --- 传输层Ⅱ TCP协议中的确认应答,超时重传和连接管理

    文章目录 网络原理 传输层 TCP 协议 TCP的基本特性 1.确认应答 2.超时重传 3.连接管理 ❗❗①建立连接(三次握手) ②断开连接(四次挥手) 总结 网络原理 介绍TCP/IP协议中每一层里 ...

  7. java实现ip首部校验和算法,理解传输层中UDP协议首部校验和以及校验和计算方法的Java实现...

    UDP,全称User Datagram Protocol,用户数据报协议,是TCP/IP四层参考模型中传输层的一种面向报文的.无连接的.不能保证可靠的.无拥塞控制的协议.UDP协议因为传输效率高,常用 ...

  8. 【Java 网络编程】Socket TCP UDP 联系

    文章目录 I 信息传输关注点 II Socket 与 TCP UDP 关系 III Socket 连接组成 ( IP地址 + 端口号 ) IV Socket TCP V Socket UDP VI C ...

  9. 计算机网络-传输层:UDP协议

    目录 一.概述 二.UDP协议 1.协议格式 2.协议特性 2.1无连接 2.2不可靠 2.3面向数据报 3.编程影响 一.概述 传输层:负责两端之间的数据传输:TCP&UDP协议. 二.UD ...

最新文章

  1. python登录接口代码_(转载)Python 的 OAuth 登录接口 python-oauth2
  2. Ajax的使用四大步骤详解,五、使用Ajax的步骤
  3. 《SAS编程与数据挖掘商业案例》学习笔记之八
  4. L8ER的完整形式是什么?
  5. lightgbm 数据不平衡_不平衡数据下的机器学习(下)
  6. 快速入门Matplotlib
  7. Windows服务的快速搭建与调试(C#图解)
  8. Zookeeper 如何选举master 主节点?
  9. 学习笔记_vnpy实战培训day04
  10. Snmp的学习总结——Snmp的基本概念
  11. 20200120每日一句
  12. python pdf转txt_Python之pdf转txt
  13. 企业微信代开发获取应用Secret
  14. Choerodon猪齿鱼实践之集群管理(一)
  15. JXT 导出数据到EXCEL
  16. sql中字符串转换成日期
  17. Windows操作系统进阶:防火墙基础和Windows Defender
  18. WPS如何使用VBA
  19. Neutron服务组件
  20. [ctfhub]刷题记录

热门文章

  1. 工程院院士李国杰科学网发文称国内 AI 研究「顶不了天,落不了地」
  2. 解决pip安装pygal在TensorFlow环境下调用失败问题
  3. IP、ARP、RARP、ICMP、IGMP(网络协议:网络层协议)
  4. 推荐系统遇上深度学习(四)--多值离散特征的embedding解决方案
  5. MLSQL解决了什么问题
  6. 深度学习(三十六)异构计算CUDA学习笔记(1)
  7. cmu的计算机专业项目有哪些,CMU卡耐基梅隆大学计算机学院项目介绍(一)
  8. python编程能有什么用_python编程能做什么开发
  9. mysql 从 a表updateb表_mysql A表自动更新和插入B表的数据
  10. LogBack 打印 ES的DSL日志信息