3.15作业

1、思维导图

2、模拟面试题

1)什么是IP地址?

答:ip地址是主机在网络中的唯一标识,分为IPv4和IPv6,IP=网络号+主机号

2)IP地址和MAC地址的区别
答:IP地址是由数字和点分十进制表示的主机在网络中的唯一标识

       MAC是物理地址,是计算机厂商给计算机的全球唯一的标识

3)当电脑从一个网络切换到另一个网络时,哪个地址变,哪个地址不变?

答:IP地址会改变,MAC地址不会改变

4)什么是端口号

答:端口号是用于标识进程的通信端口,不会随进程的重启而改变,本质上是一个2字节无符号整数存储。

分为三类,系统指定端口号0~1023,用户可用端口号1024~49151,自动分配端口号49152~65535

5)TCP通信过程中的服务器端实现流程

答:首先服务器会用socket创建一个用于连接的套接字文件描述符sfd,然后使用bind函数绑定IP号和端口号,可以让客户端找到服务器端,然后使用listen函数将这个套接字文件描述符设置成被动监听,接着使用accept函数将服务器端阻塞等待,直到有客户端连接到服务器端,同时创建一个用于通信的套接字文件描述符newfd,然后客户端连接后,就可以使用send/recv、read/write、sendto/recvfrom等函数进行数据的接收和发送,最后使用close关闭监听sfd和用于通信的套接字newfd。

6)TCP通信的客户端流程

答:首先客户端会使用socket创建一个用于通信的套接字文件cfd,然后使用bind函数绑定IP号和端口号(这个过程是非不必要的,因为只要连接到服务器,对端就连接到客户端的IP号和端口号),然后使用connect函数将客户端和服务器端进行连接,连接后就可以使用send/recv、write/read、sendto/recvfrom等函数进行数据的接收和发送,最后使用close关闭用于通信的套接字cfd。

7)TCP通信和UDP通信的区别
答:TCP需要连接,UDP不需要连接

       TCP提供可靠的传输,UDP是尽最大努力传输

       TCP传输稳定但是效率低,UDP传输不稳定,但是较快,效率高

       TCP传输资源开销大,UDP传输资源开销小 

       TCP会产生沾包现象,数据收发不同步,UDP不会产生该现象,数据收发同步

8)TCP的三次握手

答:进程a向进程b发送连接请求             

       进程b向进程a回复应答并向进程a发送连接请求

       进程a回复进程b,建立联系

9)TCP通信的四次挥手

答:进程a向进程b发送断开连接请求

       进程b回应进程a的断开请求

       进程b向进程a发送断开连接请求

       进程a回应进程b的请求,并断开连接

10)UDP中是否可以使用connect函数进行连接

答:  UDP通信中可以使用connect函数,他是将服务器与某个客户端建立一个唯一通道,在服务器端使用connect与某个特定的客户端建立连接后,服务器就不再接收其他客户端的消息了,如果想要断开,需要再使用一次connect函数,并且需要将地址信息结构体中的sin_addr改成AF_UNSPEC,当UDP中使用了connect与某个特定的客户端建立连接后,就可以使用read/write、send/recv等函数完成数据的接收和发送。

     

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VS2022 配置QT5.9.9

QT安装 下载地址:https://download.qt.io/archive/qt/ 下载安装后进行配置 无法运行 rc.exe 下载VS2022 官网下载 配置 1.扩展-管理扩展-下载Qt Visual Studio Tools 安装 2.安装完成后,打开vs2022,点击扩展,会发现多出了QT VS Tools,点击它,选择Qt Versions并进行配置…

Java开发从入门到精通(七):Java的面向对象编程OOP:语法、原理、this、构造器

Java大数据开发和安全开发 (一)Java的面向对象编程1.1 什么是面向对象1.2 面向对象和面向过程的区别1.3 面向对象开发设计特征1.4 面向对象语法1.4.1 先创建对象模板1.4.2 实例化对象1.4.3 对象又该怎么理解?1.4.4 对象在计算机中的执行原理 1.5 类和对…

python:消息推送 - 飞书机器人推送 - 富文本格式

简介:机器人 ( bot ) 是一种自动化的程序,可以用拟人化的身份自动推送消息,或在聊天里与你进行简单的交互。在自动化完成测试任务后,推送测试报告等是一种很常用的收尾工具。 历史攻略: python:消息推送 …

搭建知识管理系统并不复杂,这篇教程来帮你

许多人都有这样的体验:我们抓住的想法和知识总在不经意间溜走,我们想要的信息总是一时无法找到。因此,搭建一个能够系统化、分类和索引存储这些知识的“知识管理系统”是必要的。听上去很专业,其实并不复杂,让我们一步…

单目测距+姿态识别+yolov8界面+车辆行人跟踪计数

yolov5单目测距速度测量目标跟踪(算法介绍和代码) 1.单目测距实现方法 在目标检测的基础上,我们可以通过计算物体在图像中的像素大小来估计其距离。具体方法是,首先确定某个物体的实际尺寸,然后根据该物体在图像中的像…

可视化展示与交互编辑:探索3D Web轻量化平台HOOPS WEB Platform在BIM中的新可能性

随着数字技术的飞速发展,建筑行业也在不断迈向数字化转型的道路。在这个过程中,BIM(Building Information Modeling,建筑信息模型)技术已经成为建筑设计、施工和管理领域中的一项重要工具。 而在BIM的应用中&#xff…

TikTok禁令引发数据安全和控制问题

darkreading网站消息,继众议院能源与商务委员会上周通过禁用流行社交媒体平台TikTok的法案后,美国国会于周三投票赞成该法案。该法案规定,任何受“外国”控股的企业需在180天内撤资。 长期以来,TikTok作为字节跳动的子公司&#x…

C#判断素数的方法:试除法 vs 优化的试除法 vs 米勒-拉宾素数检测算法

目录 1.素数也就质数 2. 试除法 3.优化的试除法_1 4.优化的试除法_2 5.优化的试除法_3 6.米勒-拉宾素数检测算法 1.素数也叫质数 一个质数是一个大于1的自然数,只有两个正因数:1和它自身。这意味着如果一个数只有两个正因数,那么它就是…

Google Play上架:谷歌支付政策变更

目录 政策发布时间概括内容付款政策变动内容归纳google付款用户政策政策发布时间 2024 年 3 月 6 日 概括内容 为遵守《数字市场法案》(DMA) 的规定,从 2024 年 3 月 6 日起,我们将更新付款政策,允许开发者将欧洲经济区 (EEA) 的用户引导至其应用之外的平台(包括推广应用…

Swift:.ignoresSafeArea():自由布局的全方位掌握

ignoresSafeArea(_ regions : edges:)修饰符的说明 SwiftUI布局系统会调整视图的尺寸和位置,以避免特定的安全区域。这就确保了系统内容(比如软件键盘)或设备边缘不会遮挡您的视图。要将您的内容扩展到这些区域,您可以通过应用该修…

目标检测——YOLOv4算法解读

论文:YOLOv4:Optimal Speed and Accuracy of Object Detection 作者:Alexey Bochkovskiy, Chien-Yao Wang, Hong-Yuan Mark Liao 链接:https://arxiv.org/pdf/2004.10934.pdf 代码:https://github.com/AlexeyAB/darkne…

扛着半个互联网前进的core-js,其作者快被钱“拖垮”了。

Core-js 的作者是 Denis Pushkarev,他是一位俄罗斯的 JavaScript 开发者和贡献者。他在 2013 年创建了 core-js 项目,并一直积极地维护和更新这个库。 一、神奇的core-js Core-js 的月均 NPM 下载量为 2.5 亿次,总下载量高达 90 亿次&#xf…