应用层1——C/S、P2P、DNS域名系统

目录

一、网络应用模型

1、C/S

2、p2p模型

二、域名解析系统DNS

1、为什么有DNS系统?

2、域名的特点

3、DNS域名系统原理

4、递归查询、迭代查询

5、常用的根域名与顶级域名


一、网络应用模型

1、C/S

客户/服务器模型
客户请求服务,服务器提供服务
在逻辑上是一种角色的划分
在实现上是一种功能的划分

服务器的特点:
1)永久提供服务
2)有一个固定的访问地址/域名(永久性地址)

客户机:
1)可以申请服务器的服务
2)间歇性接入网络
3)可能是动态的IP地址
4)不和其他客户机直接通信(他们之间的通信是通过服务器进行转接的)

2、p2p模型

不采用服务器和客户的模型
每一个主机/节点都是对等的
可以请求服务,同时也提供服务
任意端之间可以直接进行通信
节点可能改变IP地址
可扩展性好
健壮性好(崩掉一个,不影响全局;不像服务器/客户模型,服务器一旦崩溃就全完了)
(核心思想:任意节点都是对等的)

二、域名解析系统DNS

1、为什么有DNS系统?

在我们上网的时候
本质上,是访问一些的服务器点
他们都有一个唯一的IP地址
但是,我们不可能都记得
因此,怎么办?
不用IP地址作为访问的地址
而是使用域名
什么是域名?
其实也就是www.baidu.com(前缀www是万维网,会自动加)
通俗一点说就是网址
这比去记202.112.132.133这些IP地址要人性化的多(这个ip地址是我随意编撰的)

可是机器不认识域名,不认识网站
他只认识IP地址
所以,需要有一个域名->ip地址的映射
我给机器一个域名,机器需要根据域名将之解析为一个唯一的ip地址
做这个事情的就是DNS(Domain Name System——域名系统)
实现这个节点叫做DNS服务器

2、域名的特点

域名特点:
1、不区分大小写
2、只可以使用-这个特殊符号

域名等级:
例如www.baidu.com
从右往左,依次是顶级域名->二级域名->三级域名...
应当了解基本的域名等级,如图:

3、DNS域名系统原理

DNS有四种域名服务器:
本地->权限->顶级->根
从下往上,依次原理主机

查询过程:
当主机发出DNS查询时,这个查询报文首先就会发送给本地域名服务器查询
没有查到则把请求转发给根服务器
|
根服务器知道所有的顶级域名服务器,将查询报文转发对应的顶级域名服务器
|
顶级域名服务器依旧没有查到,将查询报文转发给对应权限域名服务器
(一个权限域名服务器负责一个区,一个域可以有多个区)
|
权限域名服务器还是没有找到,再转发给其他权限域名服务器
|
结果返回

总结:
先发给本地,本地有,不用发出去,直接返回结果
本地没有,给根发;剩下的查询,要么递归,要么迭代。

4、递归查询、迭代查询

5、常用的根域名与顶级域名

域名类型示例域名描述
通用顶级域名 (gTLD).com最常见、用于商业、企业网站
.org非营利组织、机构
.net网络服务提供商、技术相关网站
.edu教育机构,通常由美国高等教育机构使用
.gov政府机构网站,通常只限于美国政府使用
.info信息共享类网站
.biz商业、企业相关网站
.name个人域名,适用于个人网站或博客
.pro专业人士,如律师、医生、会计等专业人员
.co类似于 .com,常用于公司、创业企业等
国家顶级域名 (ccTLD).cn中国
.us美国
.jp日本
.de德国
.uk英国
.fr法国
.in印度
.ca加拿大
.au澳大利亚
.br巴西
.ru俄罗斯
.kr韩国
新顶级域名 (nTLD).tech技术相关的行业
.xyz泛用型、新兴的TLD
.club适用于俱乐部或社区类网站
.shop适用于电商、购物类网站
.online适用于线上平台、电子商务类网站
.ai人工智能相关网站
.app应用程序相关网站
.blog个人博客、文章分享网站
.design设计行业相关网站
国际化域名 (IDN).中国中国的国际化域名(中文域名)
.公司中文公司顶级域名
.网络中文网络顶级域名

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【疑难杂症】 HarmonyOS NEXT中Axios库的响应拦截器无法拦截424状态码怎么办?

今天在开发一个HarmonyOS NEXT的应用的时候,发现http接口如果返回的状态码是424时,我在axios中定义的拦截器失效了。直接走到了业务调用的catch中。 问题表现: 我的拦截器代码如下: 解决办法: 先说解决办法&#xff…

在Windows上读写Linux磁盘镜像的一种方法

背景 嵌入式开发中,经常会把系统的Linux磁盘镜像保存到Windows上,以便上传到网盘备份或发送给工厂,但是如果想读取/修改镜像中的某个文件,一般有2种方案: 直接访问 就是用虚拟磁盘软件将镜像文件挂载成磁盘&#xf…

ffmpeg之显示一个yuv照片

显示YUV图片的步骤 1.初始化SDL库 目的:确保SDL库正确初始化,以便可以使用其窗口、渲染和事件处理功能。操作:调用 SDL_Init(SDL_INIT_VIDEO) 来初始化SDL的视频子系统。 2.创建窗口用于显示YUV图像: 目的:创建一个…

Windows下播放文件作为麦克风声源的一种方式

近期测试一种外语的ASR识别成功率,样本素材是懂这门语言的同事录制的mp3文件。测试client端原本是从麦克风拾音生成媒体流的。 这样,就需要想办法把mp3文件转换为测试client的输入声音。物理方式上,可以用一根音频线,把电…

如何在网页端使用 IDE 高效地阅读 GitHub 源码?

如何在网页端使用 IDE 高效地阅读 GitHub 源码? 前言什么是 GitHub1s?使用 GitHub1s 阅读 browser-use 项目源码步骤 1: 打开 GitHub 项目页面步骤 2: 修改 URL 使用 GitHub1s步骤 3: 浏览文件结构步骤 4: 使用代码高亮和智能补全功能步骤 5: 快速跳转和…

Microsoft word@【标题样式】应用不生效(主要表现为在导航窗格不显示)

背景 随笔。Microsoft word 2013基础使用,仅做参考和积累。 问题 Microsoft word 2013,对段落标题文字应用【标题样式】不生效(主要表现为在导航窗格不显示)。 图1 图2 观察图1和图2,发现图1的文字在应用【标题一】样…

2021.12.28基于UDP同信的相关流程

作业 1、将TCP的CS模型再敲一遍 服务器 #include <myhead.h> #define PORT 8888 #define IP "192.168.124.123" int main(int argc, const char *argv[]) {//创建套接字//绑定本机IP和端口号//监听客户端请求//接收客户端连接请求//收发消息//创建套接字int…

OpenCV和PyQt的应用

1.创建一个 PyQt 应用程序&#xff0c;该应用程序能够&#xff1a; 使用 OpenCV 加载一张图像。在 PyQt 的窗口中显示这张图像。提供四个按钮&#xff08;QPushButton&#xff09;&#xff1a; 一个用于将图像转换为灰度图一个用于将图像恢复为原始彩色图一个用于将图像进行翻…

kibana启动报错:Invalid character in header content [“kbn-name“]

启动时候kibana报错&#xff1a; 打开 kibana配置文件&#xff0c;config/kibana.yml&#xff0c;配置上server.name即可&#xff0c;如下&#xff1a;

Pandas08

Pandas01 Pandas02 Pandas03 Pandas04 Pandas05 Pandas06 Pandas07 文章目录 内容回顾同期群分析1.1 同期群分析概念1.2 案例代码 数据分析报告数据分析工作内容数据分析简历说明用户生命周期标签1 什么是生命周期标签2 如何计算生命周期标签 内容回顾 TGI 偏好分析 TGI 目标…

网页数据的解析提取之Beautiful Soup

前面博客介绍了正则表达式的相关用法&#xff0c;只是一旦正则表达式写得有问题&#xff0c;得到的结果就可能不是我们想要的了。而且每一个网页都有一定的特殊结构和层级关系&#xff0c;很多节点都用id或 class 作区分所以借助它们的结构和属性来提取不也可以吗? 本篇博客我…

电脑缺失sxs.dll文件要怎么解决?

一、文件丢失问题&#xff1a;以sxs.dll文件缺失为例 当你在运行某个程序时&#xff0c;如果系统提示“找不到sxs.dll文件”&#xff0c;这意味着你的系统中缺少了一个名为sxs.dll的动态链接库文件。sxs.dll文件通常与Microsoft的.NET Framework相关&#xff0c;是许多应用程序…

进军AI大模型-环境配置

语言环境配置 合法上网工具&#xff1a; 这个T子试试&#xff0c;一直稳定。走我链接免费用5天: https://wibnm.com/s/ywtc01/pvijpzy python版本&#xff1a; python3.12 Langchain: Introduction | &#x1f99c;️&#x1f517; LangChain v0.3 9月16日升级的版本 pip3…

WebStorm的下载安装指南

下载 打开网站https://www.jetbrains.com/webstorm/download/#sectionwindows 或者直接网盘下载 通过网盘分享的文件&#xff1a;WebStorm-2024.3.1.1.exe 链接: https://pan.baidu.com/s/16JRZjleFYshLbVvZB49-FA?pwdn5hc 提取码: n5hc –来自百度网盘超级会员v6的分享 安…

Vue使用pages构建多页应用

经过上一篇文章&#xff0c;大家对单页应用配置的都有了一定的了解。相信大家应该对如何构建一个 Vue 单页应用项目已经有所收获和体会&#xff0c;在大部分实际场景中&#xff0c;我们都可以构建单页应用来进行项目的开发和迭代&#xff0c;然而对于项目复杂度过高或者页面模块…

springboot506基于Springboot的小区疫情购物系统录(论文+源码)_kaic

摘 要 信息数据从传统到当代&#xff0c;是一直在变革当中&#xff0c;突如其来的互联网让传统的信息管理看到了革命性的曙光&#xff0c;因为传统信息管理从时效性&#xff0c;还是安全性&#xff0c;还是可操作性等各个方面来讲&#xff0c;遇到了互联网时代才发现能补上自古…

复习打卡大数据篇——Hadoop MapReduce

目录 1. MapReduce基本介绍 2. MapReduce原理 1. MapReduce基本介绍 什么是MapReduce MapReduce是一个分布式运算程序的编程框架&#xff0c;核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序&#xff0c;并发运行在Hadoop集群上。 MapRed…

RK3506开发板:智能硬件领域的新选择,带来卓越性能与低功耗

在现代智能硬件开发中&#xff0c;选择一款性能稳定、功耗低的开发板是确保产品成功的关键。Rockchip最新推出的RK3506芯片&#xff0c;凭借其卓越的能效比、多功能扩展性和优秀的实时性能&#xff0c;已经成为智能家电、工业控制、手持终端等领域的热门选择。而基于RK3506的Ar…

Python学习(2):注释、数字、文本、列表

1 关于注释 Python 使用井号#作为单行注释的符号&#xff0c; 使用三个连续的单引号’’或者三个连续的双引号"""注释多行内容。 2 数字 2.1 基本运算 解释器像一个简单的计算器&#xff1a;你可以输入一个表达式&#xff0c;它将给出结果值。 表达式语法很直观…

加载Tokenizer和基础模型的解析及文件介绍:from_pretrained到底加载了什么?

加载Tokenizer和基础模型的解析及文件介绍 在使用Hugging Face的transformers库加载Tokenizer和基础模型时&#xff0c;涉及到许多文件的调用和解析。这篇博客将详细介绍这些文件的功能和它们在加载过程中的作用&#xff0c;同时结合代码片段进行解析。 下图是我本地下载好模…