计算机网络传输层知识总结·

news2024/11/16 21:52:45

传输层提供的服务

传输层的功能
    ●传输层提供进程之间的逻辑通信,即端到端的通信
    ●复用和分用
    ●差错检测(首部和数据部分)
    ●面向连接的TCP和无连接的UDP

端口的作用
    ●端口标识的是主机中的进程
    ●硬件端口是不同硬件设备进行交互的接口(路由器,交换机上有)
    ●软件端口是应用层的各种协议进程与传输实体进行层间交互的一种地址

端口号

 
套接字
    ●套接字 Socket =( IP 地址:端口号)
    ●它唯一地标识网络中的一台主机和其上的一个应用(进程)

无服务连接和面向服务连接
TCP
UDP
注:
    1.网络层只提供首部的差错控制
    2.数据链路层的 SAP 是 MAC 地址,网络层的 SAP 是 IP 地址,传输层的 SAP 是端口。
    3.传输层使用的是软件端口
    4.用户应用程序使用 UDP 进行数据传输,那么必须在传输层的上层即应用层提供可靠性方面的全部工作
    5.一个 TCP 报文的首部长度是20B,一个 IP 数据报的首部长度也是20B
    6.熟知端口号是0—1023
    7.登记端口号是1024—49151
    8.短暂端口号是49152—65535
 

UDP

UDP数据报


UDP 仅在 IP 的数据报服务之上增加了两个最基本的服务:复用和分用以及差错检测。
UDP的优点:
    ●UDP无需建立连接
    ●无连接状态
    ●分组首部开销小(8B)
    ●应用层能更好地控制要发送的数据和发送时间
    ●UDP 支持一对一、一对多、多对一和多对多的交互通信。
UDP的首部格式
    ●源端口
    ●目的端口
    ●长度
    ●校验和
 

UDP校验

 
    ●校验时,若 UDP 数据报部分的长度不是偶数个字节,则需填入一个全0字节
    ●如果 UDP 校验和校验出 UDP 数据报是错误的,那么可以丢弃,也可以交付给上层,但是需要附上错误报告,即告诉上层这是错误的数据报
    ●通过伪首部,不仅可以检查源端口号、目的端口号和 UDP 用户数据报的数据部分,还可以检查 IP 数据报的源 IP 地址和目的地址。
注:
    1.UDP 数据报的格式包括 UDP 源端口号、 UDP 目的端口号、 UDP 报文长度和校验和,但不包括 UDP 数据报首部长度。因为 UDP 数据报首部长度是固定的8B,所以没有必要再设置首部长度字段。
    2.UDP 的校验和功能不是必需的,可以不使用
    3.如果 UDP 校验和计算结果为0,那么在校验和字段置为全1
    4.UDP 校验和字段的计算包括一个伪首部、 UDP 首部和携带的用户数据 
    5.UDP 校验和的计算方法是二进制反码运算求和再取反

TCP

TCP的特点:
    ●面向连接的,逻辑连接
    ●每条TCP连接是一对一的
    ●全双工通信
    ●可靠的
    ●面向字节流的

TCP报文段
    ●首部(其首部的前20B是固定的。 TCP 首部最短为20B,后面有4N字节是根据需要而增加的选项,长度为4B的整数倍。)
    ●数据

TCP连接管理
    ●连接建立
    ●数据传输
    ●连接释放

TCP的连接建立:
    ●三次握手
    ●服务器端的资源是在完成第二次握手时分配的
    ●而客户端的资源是在完成第三次握手时分配的

TCP连接的释放:
    ●四次握手

TCP的可靠传输
    ●校验(与UDP一致)
    ●序号 (保证数据有序提交给应用层)
    ●确认
    ●重传(超时和冗余ACK)

TCP流量控制
    ●TCP 提供流量控制服务来消除发送方(发送速率太快)使接收方缓存区溢出的可能性

TCP拥塞控制
    ●接收窗口rwnd
    ●拥塞窗口cwnd

注:
    1.TCP 伪首部与 UDP 伪首部一样,包括 IP 分组首部的一部分。 IP 首部中有一个协议字段,用指明上层协议是 TCP 还是 UDP 。17代表 UDP ,6代表 TCP
    2.报头长度是20~60B,由于数据偏移字段的单位是4B,也就是说当偏移取最大时 TCP 首部长度为15x4=60B
    3.TCP使用大小可变的滑动窗口进行流量控制
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1083392.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

早安问候语早安心语,别把人生想太难,人生需要鼓励

1、别把人生想的太难,人生需要几分自我的鼓励,不管在什么时候,要有几分信念和信心,生活少不了哭哭笑笑。青山绿水依然在,来来往往人不同,要学会看得惯,还要学会看得开,你内心的平坦是…

开源酒店预订订房小程序源码系统+多元商户 前端+后端完整搭建教程 可二次开发

大家好啊,罗峰今天来给大家分享一款酒店预订订房小程序源码系统,这款系统进行了全新的升级,从原来的单门店升级成了多门店,可以自由切换账号,统一管理。功能强大。以下是部分代码截图: 酒店预订订房小程序源…

性价比高的学生用台灯?这些Led台灯适合学生用

想要选好护眼台灯首先我们要知道什么是护眼台灯,大的方向来看,护眼台灯就是可以保护视力的台灯,深入些讲就是具备让灯发出接近自然光特性的光线,同时光线不会伤害人眼而出现造成眼部不适甚至是视力降低的照明设备。 从细节上看就…

人物——高会军

近日,美国电气与电子工程师协会(英文简称IEEE)系统、人与控制论学会在美国夏威夷公布2023年诺伯特维纳奖(Norbert Wiener Award)获奖者,中国自动化学会会士、副秘书长,欧洲科学院院士&#xff0…

施耐德PLC之间的的无线MODBUS通信实例

本文主要介绍施耐德(睿易)PLC之间的MODBUS通讯的具体操作和各参数的意义,此方案可以作为施耐德(睿易)PLC之间的的无线MODBUS 通信实例。在本方案中采用了西门子、施耐德等欧美系PLC专用无线通讯终端DTD434M&#xff0c…

【python】求多变量/样本(矩阵)之间的相关性系数

创作日志: Pearson或Spearson代表的是两个变量之间的相关性,因此一般输入是两个向量(vector),那么当我们有多个变量时,怎样计算他们两两之间的相关性系数呢?得到的correlation matrix各元素代表的又是什么意思呢&#…

1800*C. Table Decorations(贪心 || 二分)

Problem - 478C - Codeforces 解析: 做法一:二分,显然左右边界为 0 和 总数量除以3。check时mid,任意两项之和都不能小于mid 做法二:贪心,当数量最大的气球数量的一半小于另外两种颜色气球的数量之和&#…

2021年09月 Python(二级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python编程(1~6级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 有如下Python程序段: x,y12,5 if x % y0:zx/yprint(x,"/",y,"",z) else:zy*xprint(x,&qu…

Allegro模块化布局的操作方法

用Allegro模块化布局的方法,可以大大提高PCB布局的效率。具体操作方法如下: (1)首先,在PCB界面激活MOVE命令,选择菜单Edit→Move 或点击快捷菜单,如下图。 (2)在Find选项卡只选择Symbols(器件) (3)在Optio

东芝Z750的画质真实吗?适合看纪录片吗?

东芝Z750显示的画面更加真实、细腻、有层次感,就感觉电视中的画面像真实世界一般呈现在眼前,东芝电视拥有70余年的原色调校技术,每款产品都有专属的日本调校工程师匠心打造,可以真实还原画面色彩,若是观看类似《航拍中国》这样的旅游记录片时,东芝电视将会营造出万里山河的壮阔…

云LIS系统源码 B/S架构,SaaS模式,可扩展性强

基于B/S架构的医学实验室LIS检验系统源码,整个系统的运行基于WEB层面,只需要在对应的工作台安装一个浏览器软件有外网即可访问。全套系统采用云部署模式,部署一套可支持多家医院检验科共同使用。 采用.Net Core新的技术框架、DEV报表、前端js…

WSL2下的Docker配置和使用

在Windows的Linux子系统(Windows Subsystem for Linux)WSL2中安装、配置和使用 Docker,可以参考官方教程:WSL上的Docker远程容器入门. 重要步骤总结如下: 先决条件 确保你的计算机运行的是 Windows 10(更…

[Python]图片转字符画——这就是我的表情!!!!!!

背景 偶尔看到一些视频,他们把图片转字符画,平常也没有去关注,今天来捣鼓一下。 研究了一下还超级简单的,都是调用别人写好的框架。 网上也有很多教学。 代码实现 from PIL import Image # 表示字符颜色,由深到浅&am…

ppt录屏没有声音?超实用教程来了!

随着信息技术的发展,ppt已经成为工作中必不可少的工具。无论是工作报告、项目展示还是学术交流,都离不开ppt的辅助。屏幕录制功能是ppt的一个重要特性,可以帮助用户方便地录制幻灯片演示,但在使用过程中,有时会遇到ppt…

算法进阶——字符串的排列

题目 输入一个长度为 n 字符串&#xff0c;打印出该字符串中字符的所有排列&#xff0c;你可以以任意顺序返回这个字符串数组。 例如输入字符串ABC,则输出由字符A,B,C所能排列出来的所有字符串ABC,ACB,BAC,BCA,CBA和CAB。 数据范围&#xff1a;n<10 要求&#xff1a;空间复…

pillow篇---pillow连续打开同一张图片会导致打开失败问题

如果你需要在多次操作同一张图像时避免出现缓存问题&#xff0c;你可以使用 Image.open() 方法的 seek() 方法将文件指针移动到图像数据的开头&#xff0c;以便重新读取图像数据。示例如下&#xff1a; from PIL import Image# 打开图像文件 image Image.open(example.jpg)# …

C# OpenVINO 通用OCR识别 文字识别 中文识别 服务

软件说明 基于以下开源项目&#xff0c;做了再次封装 https://github.com/sdcb/OpenVINO.NET 自带模型&#xff0c;可离线部署&#xff1b; 技术路线&#xff1a;VS2022Sdcb.OpenVINOSdcb.OpenVINO.PaddleOCROpenCvSharpNLogNancy.Hosting.Self 软件界面 开启服务 测试 耗时…

Lumen/Laravel - 数据库读写分离原理 - 探究

1.应用场景 主要用于学习与探究Lumen/Laravel的数据库读写分离原理。 2.学习/操作 1.文档阅读 chatgpt & 其他资料 数据库入门 | 数据库操作 | Laravel 8 中文文档 入门篇&#xff08;一&#xff09;&#xff1a;数据库连接配置和读写分离 | 数据库与 Eloquent 模型 | La…

K8S云计算系列-(4)

K8s Dashboard UI 部署实操 Kubernetes实现的最重要的工作是对Docker容器集群统一的管理和调度&#xff0c;通常使用命令行来操作Kubernetes集群及各个节点&#xff0c;命令行操作非常不方便&#xff0c;如果使用UI界面来可视化操作&#xff0c;会更加方便的管理和维护。如下为…

数学建模——平稳时间序列分析方法

目录 1、平稳性的Daniel检验 &#xff08;1&#xff09;Spearman相关系数假设检验 &#xff08;2&#xff09;时间序列平稳性的Danniel假设检验 案例 【模型分析】 1、原始数据at的平稳性检验 2、一阶差分序列的平稳性检验 3、二阶差分序列的平稳性检验 4、建立AR&#…