当前位置: 首页 > news >正文

网络编程第1天

  1. OSI的七层网络模型有哪些,每一层有什么作用?

(1)应用层

负责处理不同应用程序之间的通信,需要满足提供的协议,确保数据发送方和接收方的正确

应用层提供的协议:

HTTP:超文本传输协议,用于Web浏览器和Web服务器之间的通信。

FTP:文件传输协议,用于文件的上传和下载。

SMTP:简单邮件传输协议,用于发送和接收电子邮件。

POP3:邮局协议版本3,用于从邮件服务器上接收电子邮件。

IMAP:Internet邮件访问协议,用于从邮件服务器上接收和管理电子邮件。

......

2)表示层

负责网络中通信的数据的编码和格式,确保通信过程中数据的正确,数据加密或者解密,保证了数据的安全性等等

例如:

编码格式的转换

音视频格式的转换

数据的加密与解密

数据的压缩与解压缩

图像格式的转换

......

(3)会话层

负责与其他计算机中的应用程序建立、维护或者终止会话

4)传输层

负责计算机与计算机之间(端与端)的数据的传输,保证了数据收发的过程

TCP协议:传输控制协议

UDP协议:数据报协议

(5)网络层

网络层,称为网络协议层-----“IP协议”,负责不同网络中的应用程序之间的通信,保证数据的发送方能准确到数据的接收方

(6)数据链路层

负责的是将网络中的数据转换成物理层能识别的信号(字节类型的数据),还负责设备结点(用MAC地址来进行表示)之间的数据的传输

主要功能:

物理寻址,错误重发等等

(7)物理层

负责底层最原始的数据(比特数据)的传输

  1. TCP/IP的四层网络模型有哪些,每一层有什么作用?

(1)应用层

将表示层、会话层统一归属到应用层,应用层中的应用程序使用端口号来进行标识

(2)传输层

(3)网络层

(4)网络接口层(数据链路层)

将数据链路层和物理层归属到数据链路层或者是网络接口层,使用MAC地址来唯一表示计算机的物理地址,还定义了一些列的网络接口(以太网、令牌网等等)

3、什么是大端存储?什么是小端存储?用C语言代码实现数据在内存中的存储是大端存储还是小端存储?

大端存储:数据的高字节,存储在内存的低地址,数据的低字节,存储在内存的高地址

小端存储:数据的高字节,存储在内存的高地址,数据的低字节,存储在内存的低地址

 #include <stdio.h>union A{short a;char arr[2];};int main(int argc, const char *argv[]){union A s;s.a=0x1234;printf("arr[0]=%x\n",s.arr[0]);if(s.arr[0]==0x34){printf("小端存储\n");}return 0;}                                            

4、sizeof和strlen有什么区别

1.Sizeof是运算符而strlen是函数

2.Sizeof可以用类型做参数,strlen只能用char*做参数

3.数组做sizeof参数不退化,而传递给strlen则退化成指针

4.strlen结果是运行时候才能计算出来,而且计算出来的是字符串的长度不是内存的大小

5.当使用的是结构体或者变量时,sizeof返回的是实际的大小,静态空间数组则返回数组的尺寸

6.sizeof不能返回动态分配的数组或者外部数组的尺寸

相关文章:

网络编程第1天

OSI的七层网络模型有哪些&#xff0c;每一层有什么作用&#xff1f; &#xff08;1&#xff09;应用层 负责处理不同应用程序之间的通信&#xff0c;需要满足提供的协议&#xff0c;确保数据发送方和接收方的正确 应用层提供的协议&#xff1a; HTTP&#xff1a;超文本传输…...

Springboot--整合Logback 日志框架(Maven)

文章目录 前言一、Logback 日志框架介绍&#xff1a;二、整合&#xff1a;2.1 引入jar2.2 logback.xml 文件配置&#xff1a;2.3 日志输出&#xff1a;2.3.1 方式一&#xff1a;2.3.2 方式二&#xff1a; 2.3 日志输出结果展示&#xff1a; 三、扩展&#xff1a;3.1 日志输出格…...

【考研数学】李林《880》vs 李永乐《660》完美使用搭配

没有说谁一定好&#xff0c;只有适不适合自身情况&#xff0c;针对自身弱点选择性价比才最高。 两者侧重点不同&#xff0c;660适合强化前期&#xff0c;弥补基础的不足&#xff0c;880适合强化后期&#xff0c;题型全面&#xff0c;提高我们对综合运用知识的能力。 选择习题…...

Java面试之消息中间件

消息队列 优缺点 特点 解耦异步削峰缺点 系统可用性降低 兜底:代码中try、catch 异常捕捉后直接进行数据库操作,或者 搭建高可用集群,Kafka集群、RocketMQ集群提高复杂度 消息重复(消费端的幂等性设计)、消息丢失(主要集中RabbitMQ)、消息的顺序(业务:1,下单 2,支付 3,发…...

网工学习 DHCP配置-接口模式

网工学习 DHCP配置-接口模式 学习DHCP总是看到&#xff0c;接口模式、全局模式、中继模式。理解起来也不困难&#xff0c;但是自己动手操作起来全是问号。跟着老师视频配置啥问题没有&#xff0c;自己组建网络环境配置就是不通&#xff0c;悲催。今天总结一下我学习接口模式的…...

【GO】语言特点 | Go和Java的对比

while循环 go语言中没有while循环&#xff0c;一般都是用for循环替代 while (条件) {} // Java的for循环for true {} // go 语言中会用一个为真的表达式作为是否 会进入循环的条件&#xff0c;也就是把其他语言的for和while合并了for循环 for (Type item : list) {} // j…...

USB2.0设备检测过程信号分析

1.简介 USB设备接入的Hub端口负责检测USB2.0设备是否存在和确定USB2.0设备的速度。检测设备是否存在和确定设备速度涉及一系列的信号交互&#xff0c;下面将分析该过程。 2.硬件 USB低速设备和全速/高速设备的连接器在硬件结构上有所不同&#xff0c;而主机或者Hub接收端连接…...

Go语言物联网开发安科瑞ADW300/4G电能表数据上传mqtt平台-电表接线到传输数据完整流程

电能表功能说明 ADW300是方便用户进行用电监测、集抄和管理&#xff0c;可灵活安装在配电箱中&#xff0c;可用于电力运维、环保监管等在线监测类平台中。我们本案例是用于工业售电公司对出售电的管理&#xff0c;设备可以监控用电情况、故障监控及警报&#xff0c;售电公司可…...

LabVIEW质谱仪开发与升级

LabVIEW质谱仪开发与升级 随着科技的发展和实验要求的提高&#xff0c;传统基于VB的质谱仪系统已经无法满足当前的高精度和高效率需求。这些系统通常存在着功能不全和操作复杂的问题&#xff0c;影响了科研和生产的进度。为了解决这些问题&#xff0c;开发了一套基于LabVIEW开…...

SwiftUI之DragGesture

SwiftUI中的DragGesture是一种手势识别器&#xff0c;用于捕捉用户拖拽操作。通过DragGesture&#xff0c;我们可以监听用户在视图上的拖拽行为&#xff0c;并对其进行响应。 在SwiftUI中&#xff0c;我们可以将DragGesture应用于任何视图&#xff0c;以便捕捉拖拽手势。在Dra…...

主网NFT的发布合约

1.什么是nft? NFT:Non-fungible-token 非同质化货币 2.新建suimove项目 使用sui move new 项目名命令新建sui move项目 sui move new nft_qyx项目结构如下: 3.写nft合约 module qyx123::nft{use sui::object::{Self, UID};use sui::transfer;use sui::tx_context::{Sel…...

分享2024年在家轻松兼职赚钱的5个副业

今天在网上看到这么一句话&#xff0c;真的让我深有感触&#xff1a;“职场人一定要有居安思危的意识&#xff0c;创业的人一定要三思而后行”。在这个瞬息万变的时代&#xff0c;连被视为铁饭碗的公务员、教师等体制内工作都不能保证一辈子的稳定。发展副业&#xff0c;似乎成…...

电脑小问题:Windows更新后黑屏

Windows 更新后黑屏解决方法 在 Windows 更新后&#xff0c;伴随了一个小问题&#xff0c;电脑启动后出现了桌面黑屏。原因可能是火绒把 explorer.exe 当病毒处理了。 下面讲解 Windows 更新后黑屏的解决方法&#xff0c;步骤如下&#xff1a; 1. 按 ctrl alt delete 组合键…...

C++指针(四)万字图文详解!

个人主页&#xff1a;PingdiGuo_guo 收录专栏&#xff1a;C干货专栏 前言 相关文章&#xff1a;C指针&#xff08;一&#xff09;、C指针&#xff08;二&#xff09;、C指针&#xff08;三&#xff09; 本篇博客是介绍函数指针、函数指针数组、回调函数、指针函数的。 点赞破六…...

商品管理系统设计100问?

你的系统是用于哪种类型的商品管理&#xff1f;比如电子商品、实体商品、服装、食品等等&#xff1f;你需要管理哪些商品信息&#xff1f;比如名称、描述、价格、库存等等&#xff1f;你是否需要对商品进行分类&#xff1f;如果是&#xff0c;分类的结构是怎样的&#xff1f;你…...

Python的反射

通过字符串的形式操作对象的属性 class Person(object):def __init__(self,name,age) -> None:self.namenameself.ageagedef walking(self):print("walking......")获取对象的属性 pPerson("Recardo",12) # 获取队形的name属性 agetattr(p,"nam…...

【Spring云原生系列】Spring RabbitMQ:异步处理机制的基础--消息队列 原理讲解+使用教程

&#x1f389;&#x1f389;欢迎光临&#xff0c;终于等到你啦&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;持续更新的专栏《Spring 狂野之旅&#xff1a;从入门到入魔》 &a…...

UE5.1_Varest_Warning

UE5.1_Varest_Warning LogVaRest: Warning: UVaRestRequestJSON::GetResponseContentAsString(637): Response content string is cached LogVaRest: Warning: UVaRestRequestJSON::GetResponseContentAsString(637): Response content string is cached是警告也是报错&#…...

硬盘温度过高会怎么办?机箱温度多少算正常?

硬盘温度 硬盘在使用过程中&#xff0c;断电很容易导致数据丢失&#xff0c;但如果温度过高&#xff0c;也可能对硬盘造成损坏。 硬盘的温度是决定电脑能否正常使用的重要因素。 如果长时间读取和存储数据&#xff0c;硬盘的温度会升高。 那么&#xff0c;硬盘的正常温度是多少…...

fs模块_写入文件

fs&#xff1a;file system&#xff08;文件系统&#xff09; fs 模块可以实现与硬盘的交互例如文件的创建、删除、重命名、移动&#xff0c;还有文件内容的写入、读取&#xff0c;以及文件夹的相关操作 // 需求&#xff1a; // 新建一个文件&#xff0c;座右铭.txt&#xff…...

太阳能灌溉控制系统设计与低功耗优化实践

1. 项目概述&#xff1a;太阳能灌溉控制系统 这个项目源于一个非常具体的农场灌溉问题。在夏季干旱时期&#xff0c;农场使用一口浅井作为灌溉水源的储水容器。但由于井非常浅&#xff0c;加上农场主&#xff08;也就是我的父母&#xff09;有时会忘记关闭水泵&#xff0c;导致…...

5分钟解决AutoCAD字体缺失问题:FontCenter智能字体管理插件完整指南

5分钟解决AutoCAD字体缺失问题&#xff1a;FontCenter智能字体管理插件完整指南 【免费下载链接】FontCenter AutoCAD自动管理字体插件 项目地址: https://gitcode.com/gh_mirrors/fo/FontCenter 还在为AutoCAD图纸中出现的问号和乱码文字而烦恼吗&#xff1f;FontCente…...

告别配置烦恼!Visual Studio 2022 + Python 3.11 下 Pybind11 环境搭建保姆级教程

告别配置烦恼&#xff01;Visual Studio 2022 Python 3.11 下 Pybind11 环境搭建保姆级教程 在C与Python混合开发领域&#xff0c;Pybind11凭借其轻量级和高效性已成为连接两种语言的黄金桥梁。然而&#xff0c;随着Visual Studio 2022和Python 3.11的发布&#xff0c;许多开发…...

手机号逆向查询QQ号:3步快速查询完整指南

手机号逆向查询QQ号&#xff1a;3步快速查询完整指南 【免费下载链接】phone2qq 项目地址: https://gitcode.com/gh_mirrors/ph/phone2qq 你是否遇到过需要查找手机号对应QQ号的困扰&#xff1f;手机号逆向查询工具正是为解决这一实际问题而设计的Python开源工具。这个…...

视觉SLAM实战指南:如何利用EuRoC MAV数据集进行算法验证与调优

1. 初识EuRoC MAV数据集&#xff1a;SLAM开发者的宝藏库 第一次接触EuRoC数据集时&#xff0c;我正为一个无人机项目调试视觉惯性里程计&#xff08;VIO&#xff09;算法。当时试过自己采集数据&#xff0c;结果发现标定误差和同步问题让调试过程变成噩梦。直到同事扔给我MH_01…...

7个秘诀快速掌握RPFM:全面战争模组编辑器的终极指南

7个秘诀快速掌握RPFM&#xff1a;全面战争模组编辑器的终极指南 【免费下载链接】rpfm Rusted PackFile Manager (RPFM) is a... reimplementation in Rust and Qt5 of PackFile Manager (PFM), one of the best modding tools for Total War Games. 项目地址: https://gitco…...

镜像供应链攻击频发,你还在跳过签名验证?27个必须执行的Docker签名验证步骤,现在不看明天被黑

第一章&#xff1a;镜像供应链攻击的现状与签名验证的生死线 近年来&#xff0c;容器镜像供应链攻击呈爆发式增长。攻击者不再直接入侵运行时环境&#xff0c;而是将恶意代码注入构建阶段——篡改基础镜像、劫持CI/CD流水线、伪造Docker Hub账号上传带后门的镜像。2023年CNCF报…...

如何在Windows上实现macOS风格三指拖拽:ThreeFingerDragOnWindows终极指南

如何在Windows上实现macOS风格三指拖拽&#xff1a;ThreeFingerDragOnWindows终极指南 【免费下载链接】ThreeFingersDragOnWindows Enables macOS-style three-finger dragging functionality on Windows Precision touchpads. 项目地址: https://gitcode.com/gh_mirrors/th…...

STM32网络调试救星:用HostName+DHCP告别“IP地址猜猜看”,附FreeRTOS下LWIP 2.1.2完整工程配置

STM32网络调试实战&#xff1a;基于HostName的智能设备发现方案 实验室里五台相同的STM32设备同时上电&#xff0c;LED灯整齐闪烁&#xff0c;但哪台对应哪个IP&#xff1f;这个场景让多少嵌入式开发者抓狂地插拔网线、反复刷新路由器界面。传统DHCP方案虽然解决了IP分配问题&a…...

3分钟掌握B站字幕提取:BiliBiliCCSubtitle完全指南

3分钟掌握B站字幕提取&#xff1a;BiliBiliCCSubtitle完全指南 【免费下载链接】BiliBiliCCSubtitle 一个用于下载B站(哔哩哔哩)CC字幕及转换的工具; 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBiliCCSubtitle 还在为无法保存B站视频中的宝贵字幕而烦恼吗&#…...