LINUX网络编程:传输层

目录

1.端口号

1.1知名端口号

1.2注意

2.UDP协议

2.1UDP报头的格式

2.2UDP的特点

2.3UDP的缓冲区


1.端口号

端口号的作用标识一个网络中主机的一个进程。

网络之间通信无非就是,发送端和接受端进程之间的通信,所以通过ip地址找到目标主机之后,在使用端口号找到目标的进程

1.1知名端口号

有一些常用的服务器,他们的端口号是固定的,我们在写服务器绑定端口号的时候要避开这些固定的端口号(知名端口号)。

使用命令

cat /etc/services

查看知名端口号

 

未完全列举

1.2注意

一个进程可以绑定多个端口号,但是一个端口号不能绑定多个进程。

从定义出发来理解这个问题,端口号是用来标识进程的,可以用多个端口号标识一个进程,

但是一个端口号绑定了多个进程,那么主机收到数据之后应该交给哪个进程呢?

2.UDP协议

2.1UDP报头的格式

注意:udp的长度(报头 + 数据)只有16位这么大,换算过来就是64kb,如果说你的数据超过64kb,多出的部分会被丢弃

2.2UDP的特点

1.无连接:知道ip端口直接进行传输

在创建出套接字之后,不用建立连接,直接可以进行通信。

2.不可靠:没有确认机制,也没有重传机制,发送的数据丢了就丢了。

首先不可靠并不是一个缺点,虽然UDP不可靠,但是相比TCP会更快一些,因为不用建立连接,不用维护连接,用于一些对数据传输可靠性要求不高的应用场景。

3.面向数据报:不能灵活的控制读写

使用UDP发送50个字节的数据,每次发10个发5次,接受方就需要接受5次。

2.3UDP的缓冲区

1.无发送缓冲区:udp只想快一点吧数据发送出去,在调用sendto接口,会将数据直接交给内核。

2.接收缓冲区:udp是有接受缓冲区的,但是不能保证接受数据的顺序,如果缓冲区满了,再发过来的数据也会被丢弃。

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

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

相关文章

【渗透测试】-vulnhub源码框架漏洞-Os-hackNos-1

vulnhub源码框架漏洞中的CVE-2018-7600-Drupal 7.57 文章目录  前言 1.靶场搭建: 2.信息搜集: 主机探测: 端口扫描: 目录扫描: 3.分析: 4.步骤: 1.下载CVE-2018-7600的exp 2.执行exp: 3.写入木…

【算法竞赛】队列

队列相关概念 队列中的数据存取方式是“先进先出”,只能向队尾插入数据,从队头移出数据. 队列的原型在生活中很常见,如食堂打饭的队伍,先到先服务.队列有两种实现方式:链队列和循环队列,如图1.2所示. 链队列可以看作单链表的一种特殊情况,用指针把各个节点连接起来. 循环队…

Docker Registry API best practice 【Docker Registry API 最佳实践】

文章目录 1. 安装 docker2. 配置 docker4. 配置域名解析5. 部署 registry6. Registry API 管理7. 批量清理镜像8. 其他 👋 这篇文章内容:实现shell 脚本批量清理docker registry的镜像。 🔔:你可以在这里阅读:https:/…

Android 15 正式发布至 AOSP

Google官方宣布,将于近期发布了 Android 15,而在早些时候,Google已经将其源代码推送至 Android 开源项目 (AOSP)。未来几周内,Android 15 将在受支持的 Pixel 设备上正式推出,并将于今年晚些时候在三星、Honor、iQOO、…

终于有人把 Jmeter 工具的 CSV 参数化讲清楚啦!

在性能测试和接口测试中,参数化是让测试更贴近真实场景的关键步骤,尤其是使用JMeter进行测试时,CSV文件的参数化功能能够让我们模拟大量用户输入,但很多测试人员对其理解不够透彻。今天,我们终于来详细讲清楚如何通过J…

JVM(HotSpot):JVM简单介绍

文章目录 一、什么是JVM二、优点三、比较四、学习路线 一、什么是JVM 定义:java程序的运行环境 首先,我们要知道,JVM是一套规范,运行java程序的一套规范。 那么,我们学习过java的人都知道,接口规范的实现类…

突破空间限制:4个远程控制电脑的办法

如何远程操作另一台电脑,高效完成工作任务? 今天这篇文章,就来分享4种高效且实用的远程控制电脑方法,这些方法不仅能够帮助我们跨越地域的空间界限,还能极大地提升我们的工作效率和灵活性。无论是远程汇报还是数据共享…

【多模态大模型】社招秋招实习 -- 快手招聘!

快手垂搜(多模态搜索&AI)团队 多模态 & 大模型 & Agent 正式员工(*3) & 实习生招聘 (*5,实习时间>3个月) 1、团队介绍 我们是快手垂搜大模型团队,致力于构建视觉大模型、多模态搜索、User Agent新系统,应用于多种电商场…

前后端分离Vue美容店会员信息管理系统o7grs

目录 技术栈介绍具体实现截图系统设计研究方法:设计步骤设计流程核心代码部分展示研究方法详细视频演示试验方案论文大纲源码获取 技术栈介绍 本课题的研究方法和研究步骤基本合理,难度适中,本选题是学生所学专业知识的延续,符合…

uniapp富文本editor输入二次扩展兼容微信小程序

在uni-app中开发富文本输入功能,并使其兼容微信小程序,需要注意一些特定的限制和解决方案。由于微信小程序本身对HTML的支持有限,直接在小程序中实现像Web那样完整的富文本编辑功能(如使用CKEditor、Quill等)是不可能的…

2024年【电气试验】试题及解析及电气试验模拟考试题

题库来源:安全生产模拟考试一点通公众号小程序 2024年【电气试验】试题及解析及电气试验模拟考试题,包含电气试验试题及解析答案和解析及电气试验模拟考试题练习。安全生产模拟考试一点通结合国家电气试验考试最新大纲及电气试验考试真题汇总&#xff0…

【强化学习系列】Gym库使用——创建自己的强化学习环境2:拆解官方标准模型源码/规范自定义类+打包自定义环境

目录 一、 官方标准环境的获取与理解 二、根据官方环境源码修改自定义 1.初始化__init__() 2.重置环境 reset() 三、打包环境 1.注册与创建自定义环境 2.环境规范化 在本文的早些时候,曾尝试按照自己的想法搭建自定义的基于gym强化学习环境。 【强化学习系列】Gy…

IEEE-754 32位十六进制数 转换为十进制浮点数

要将 IEEE-754 32位十六进制数 转换为 十进制浮点数,可以使用LabVIEW中的 Type Cast 函数。以下是一些具体步骤,以及相关实例的整理: 实现步骤: 输入十六进制数:在LabVIEW中,首先需要创建一个输入控制器&am…

剃(磨)前插齿刀设计计算开发第二步:

从刀具上的各段齿形计算加工出的齿轮端面齿形,下一步进行细化处理[开心],去掉一些线头,增加一些关键参数的计算及标准,例如:SAP、UnderCut、EAP、Chamfer等等,祝我好运吧,谢谢!

MySQL系列—11.Redo log

1.简介 概念 redo log用于记录事务操作变化,记录的是数据被修改之后的值,(tbs space id page no action)。 作用 尚未完成的DML,数据库崩溃则用log恢复。保证事务持久性。 ( 1 ) 在页面修改完成之后,脏页刷入磁盘之…

ZYNQ FPGA自学笔记~点亮LED

一 ZYNQ FPGA简介 ZYNQ FPGA主要特点是包含了完整的ARM处理系统,内部包含了内存控制器和大量的外设,且可独立于可编程逻辑单元,下图中的ARM内核为 ARM Cortex™-A9,ZYNQ FPGA包含两大功能块,处理系统Processing System…

路由原理介绍

定义与过程 定义:是指导IP报文发送的路径信息 过程: 检查数据包的目的地确定信息源发现可能的路径选择最佳路径验证和维护路由信息 路由来源 直连路由:不需配置,路由器配置IP后自动生效 静态路由:手动配置 ip r…

Ubantu LLaMA-Factory实战

一、Ubantu LLaMA-Factory实战安装: CUDA 安装 CUDA 是由 NVIDIA 创建的一个并行计算平台和编程模型,它让开发者可以使用 NVIDIA 的 GPU 进行高性能的并行计算。 首先,在 https://developer.nvidia.com/cuda-gpus 查看您的 GPU 是否支持CU…

壹嘉情,中国与世界经济文化交流的新桥梁

壹嘉情正在全球华商领域迅速崛起。作为意大利华商总会的中国分部,壹嘉情承载着推动两岸及全球华商深度合作、实现资源共享和互利共赢的使命。它的成立标志着意大利华商总会在全球战略布局上的重要一步,同时也昭示了全球化浪潮中,华人企业正加…

苹果电脑也可以清除垃圾吗?苹果电脑清理垃圾用什么软件哪个好?

相对于Windows电脑,目前专注于苹果电脑清理的软件不算多,那么,苹果电脑垃圾清理软件哪个好?本文经过对比给大家推荐几款好用的软件。另外,我们还会进行苹果电脑垃圾清理方法盘点,让大家更了解电脑的清理方法…