【Linux的网络编程】

news/2024/11/29 23:49:42/

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

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

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

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

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

(5)网络层:负责不同网络中的应用程序之间的通信,保证数据的发送方能准确到数据的接收方
(6)数据链路层:负责的是将网络中的数据转换成物理层能识别的信号(字节类型的数据),还负责设备结点(用MAC地址来进行表示)之间的数据的传输

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


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

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

(2)传输层:传输层的作用是在源结点和目的结点的两个进程实体之间提供可靠的端到端的数据传输。

(3)网络层:负责不同网络中的应用程序之间的通信,保证数据的发送方能准确到数据的接收方

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

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

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

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

4、sizeof和strlen有什么区别?

sizeof是一个操作符,用于在编译时确定特定类型或对象在内存中所占的字节数。它可以用于基本数据类型、结构体、数组等,返回的是一个常量表达式。由于sizeof在编译时计算大小,它不依赖于对象的实际内容或状态,因此使用它是安全的,不会导致运行时错误。

strlen是一个函数,用于在运行时计算C字符串的长度,返回的是字符串中不包括结尾的字符数。如果传入的指针是空指针或者结尾没有‘\0’,可能导致程序崩溃。


http://www.ppmy.cn/news/1379617.html

相关文章

SSM整合项目(Vue3环境搭建)

SSM整合项目(Vue3环境搭建) 1.下载node.js 1.卸载原来的node.js 2.检测是否卸载成功 3.下载node.js(10.16.3) 一路next就可以 4.检测是否安装成功 2.全局安装Vue插件cli 命令行输入 npm install -g vue/cli 3.新建Vue项目 1.…

HTML视频笔记

学习arm开发板,涉及到网页HTML PHP什么的,简单看个视频学习下 HTML|超简单HTML入门教程 https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element ​​​​​​vscode需要的libc6等需要的版本高​​​​​​ 为了安装vscode,将…

Redis的主从、哨兵、集群模式的概念及搭建步骤

主从复制 主从模式也叫主从复制,主是主服务器,从是从服务器,主服务器(master )的数据如果更新了 也会同步到从服务器(slave),一个主服务器可以搭配很多个从服务器,主服务…

S5PV210_视频编解码项目_裸机开发:实现按键的外部中断处理

加粗样式本文所作内容: 基于S5PV210芯片实现按键的外部中断处理程序,搭建中断处理流程框架 S5PV210对于中断处理的操作流程 1 外部中断得到触发: 1)外部中断在初始化阶段得到使能 2)外界达到了外部中断的触发条件 …

蓝桥杯PythonB组练习——字符串对比

一、题目 问题描述 给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4种情况之一: 1:两个字符串长度不等。比如Beijing和Hebei 2:两个字符串不仅长度相等&#xf…

python-批量操作excel

批量新增excel文件 import osimport xlwings as xwapp xw.App(visibleTrue,add_bookFalse)#visible设置为ture的时候会自动打开创建的excel文件,设为为false的时候不会看到excel文件打开了,实际进程占用了....dept_list [人事部,财务部,研发部,行政部…

Git的介绍

导出项目依赖 # 以后项目给别人需要导出项目依赖,放在项目路径下,以后在运行项目前,先安装依赖 一般约定俗成都叫 requirements.txt,但是会有别的:req.txt | dev.txt # 两种方式: 1、虚拟环境所有装的第三方&…

m序列生成器

function [m] mserial_generator(tap_set) % m序列产生器 % 输出为m序列,未进行极性变换。 L 2^(length(tap_set)-1)-1; x [zeros(1,(length(tap_set)-2)) 1]; for i 1:1:Lm(i)x(end);for j 1:1:length(tap_set)-1sum_vector(j)tap_set(j1)*x(j);endsum_x mod…