【计算机网络】应用层

news2024/11/16 23:41:39

应用层的许多协议都是基于客户服务器方式

客户和服务器指通信中所涉及的两个应用进程。客户服务器方式描述的是进程之间服务和被服务的关系。客户是服务请求方,服务器是服务提供方。

P2P模式:整个网络中的传输内容不再被保存在中心服务器中,每个结点都同时具有下载、上传的功能。

P2P网络是指在互联网中由对等结点组成的一种覆盖网络。

域名系统DNS:从域名解析IP地址(udp,53)

DNS被设计成一个联机分布式数据库系统,并采用客户服务器方式

域名到IP地址的解析是由分布在互联网上的许多域名服务器程序共同完成。

一台主机可以有多个域名。

一个域名可以对应多个IP地址。

域名到IP地址的解析过程:

当某一个应用进程需要把主机名解析为IP地址时,该应用进程就调用解析程序,并成为DNS的一个客户,把待解析的域名放在DNS请求报文中,以UDP用户数据报方式发送给本地域名服务器。

 

 

DNS使用传输层的UDP而不是TCP,是因为它不需要使用TCP在发生传输错误时执行的自动重传功能。因为多次DNS请求都返回相同的结果,做多次和做一次的效果一样。因此DNS操作可以重复执行,当一个进程做一个DNS请求时,它启动一个定时器。如果定时器满而未收到回复,就再请求一次。

本地域名服务器在查找域名后,把对应的IP地址放在回答报文中返回。应用进程获得目的主机的IP地址后可进行通信。

互联网的域名结构:

层次树状结构的命名方法,任何一个连接在互联网上的主机或路由器,都有一个唯一的层次结构的名字即域名。

域是名字空间中一个可被管理的划分,域还可以划分为子域,而子域还可继续划分为子域的子域,形成了顶级域、二级域、三级域....

DNS规定,域名中的标号由英文字母和数字组成,每一个标号不超过63个字符,不区分大小写,由多个标号组成的完整域名总共不超过255个字符

域名只是个逻辑概念,变长的域名有助于记忆

DNS域名服务器的管辖范围以区为单位

域名服务器分类:

根域名服务器、顶级域名服务器、权限域名服务器、本地域名服务器

域名的解析过程:

主机向本地域名服务器申请解析,如果本地域名服务器查不到,则向根域名服务器进行查询,则向根域名服务器中保存的相应授权域名服务器进行查询,一定可以查到。

本地向本地域名服务器的查询一般都采用递归查询。

递归查询:本地域名服务器以DNS客户的身份,向其他根域名服务器继续发出查询请求报文,而不是让该主机进行下一步的查询。

 如果域名和IP映射在DNS高速缓存中,那么0次,否则依此迭代向本地域名服务器、根域名服务器(.com)、顶级域名服务器(xyz.com)、权限域名服务器(abc.xyz.com),最多发出4次DNS查询。

本地域名服务器向根域名服务器查询通常采用迭代查询。

迭代查询:当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地域名服务器下一步当向哪一个域名服务器进行查询。

文件传送协议:

FTP(TCP,20:传送数据 ,21:建立连接)

TFTP(UDP, 69)

特点:

(1)提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存储权限

(2)复制整个文件,若要存取一个文件,就必须先获得一个本地的文件副本。如果要修改文件,只能对文件的副本进行修改,然后再将修改后的文件副本传回到原节点。

FTP使用客户服务器方式。一个FTP服务器进程可同时为多个客户进程提供服务。FTP的服务器进程由两大部分组成:

主进程:负责接受新的请求。从属进程:负责处理单个请求(并行)

在进行连接时,FTP客户端和服务器之间要建立两个并行的TCP连接:控制连接和数据连接。

控制连接在整个会话期间一直保持打开,FTP客户发出的 传送请求,通过控制连接发送给服务器端的控制进程。

数据连接用于传输文件。文件传输结束后关闭数据连接并结束运行。

由于FTP用了一个分离的控制连接,因此FTP的控制信息是带外传送的。

服务器端的21端口用于和客户端建立控制连接。

服务器端的20端口用于和客户建立数据连接。

客户端的端口由系统自动分配。

远程终端协议TELNET(TCP,23)

万维网WWW

万维网是一个分布式的超媒体系统,是超文本系统的扩充。

超文本是指指向其他文档的链接的文本。

万维网以客户服务器方式工作。客户程序向服务器程序发出请求,服务器程序向客户程序送回客户所要的万维网文档。

万维网使用统一资源定位符URL来标记万维网上的各种文档,并使每一个文档在整个互联网的范围内具有唯一的标识符URL。

万维网使用超文本传送协议HTTP(80,无状态,无连接)实现各种链接。

 

HTTP是一个应用层协议,使用TCP连接进行可靠的传送。

万维网使用超文本标记语言HTML显示各种页面。

电子邮件:

SMTP协议:使用TCP,25

C/S模式,负责发邮件的SMTP进程是SMTP客户,负责接受SMTP进程是SMTP服务器。

POP3协议:TCP协议,110

SMTP采用推的通信方式,在用户代理向邮件服务器发送邮件时,SMTP客户主动将邮件推送到SMTP服务器。

POP3采用拉的通信方式,当用户读取邮件时,用户代理向邮件服务器发出请求,拉取用户邮件中的邮件。

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

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

相关文章

怎么裁剪视频?手把手教你裁剪

这两年,随着网课的不断发展,我们可以很轻松的就在网上找到各种课程视频。可是有时候,一些视频里面的重点内容往往只有那几分钟,当我们回顾的时候,需要不断跳转,这就显得有些麻烦。其实我们可以将重点内容裁…

【代码随想录】二刷-回溯算法

回溯算法 《代码随想录》 什么是回溯算法? 回溯算法也可以叫做回溯搜索法,它是一种搜索方式。回溯是递归的副产品,只要有递归就会有回溯。 回溯法的效率: 回溯法的本质是穷举,穷举所有可能,然后选出我们想要的答案。(n…

如何使用virtualenv实现python环境的隔离?

有关更多的Python 开发内容,可访问:《 Python Flask开发指南》​​​​​​​ virtualenv可以帮助我们来创建一个Python的虚拟环境,虚拟环境可以独立并隔离外部的python环境,方便我们对于不同项目使用不同的python依赖,已经依赖版本的不同而导致的错误。本篇文章主要来了解…

2022全年度冰箱十大热门品牌销量榜单

自2022年年初以来,各地纷纷部署支持包括冰箱在内的家电大宗消费政策措施,其中家电补贴政策是刺激家电消费的主旋律。宏观经济政策环境改善,利好冰箱行业的长期发展。 根据鲸参谋数据统计,今年京东平台冰箱的年度累计销量达到1400多…

论文阅读笔记《Learning Combinatorial Solver for Graph Matching》

核心思想 本文提出一种基于学习的组合求解器来实现图匹配。之前基于学习的图匹配方法都是利用神经网络提取特征构建关联矩阵,然后再利用可微分的Sinkhorn算法求解匹配矩阵。但本文提出的方法没有显式的构建关联矩阵和求解匹配矩阵的过程,而是将其转化成关…

SpringBoot:核心模块盘点

spring-boot-project 是 spring-boot 核心技术包,其中包含了 spring-boot 所有基础源码,其中很多模块都是我们了解 spring-boot 的重点。 ~ 本篇内容包括:spring-boot-project 包介绍、Spring Boot 核心模块 文章目录一、spring-b…

SpringCloud-Geteway之限流,熔断(超详细篇)

目录 一,Sentinel--服务容错 1.1 高并发带来的问题 1. 使用压测工具,对请求进行压力测试 2.修改配置文件中tomcat的并发数 1.2 服务雪崩效应 1.3 常见容错方案 1.4 Sentinel入门 什么是Sentinel 微服务集成Sentinel 安装Sentinel控制台 实现一个接口的限…

QTextLine、QGlyphRun、QTextLayout

QGlyphRun 一、描述 此类提供对字体中内部字形的直接访问。在某些情况下,开发人员可以对特定字体中的字形绘制到屏幕上进行更低级的控制。 当Qt显示以Unicode编码的文本字符串时,它会将Unicode点转换为基于字体的字形索引列表和位置列表。QGlyphRun 提…

企业对于源代码加密需求分析

需求 随着企业信息化发展的日益增长,软件行业厂商之间的竞争也愈加白热化,加上国内对知识产权的不够重视、山寨模仿产品的横行。保护源代码、保证企业的核心竞争力,成为众多软件研发企业的第一要务。那么企业应该如何保证源代码的安全呢&…

[附源码]计算机毕业设计常见Web漏洞对应PC应用系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

HTTP缓存机制(Cache-Control)

文章目录HTTP缓存机制HTTP缓存机制 HTTP 协议通常应用于分布式信息系统,所谓分布式信息系统,是指以计算机网络为基础,将系统的数据与功能分别布置在不同的地方,然后再通过网络将数据与功能连接的信息系统。由于系统需要处理大量的…

世界杯期间我使用Python生成二维码“为中国队辟谣”

二维码介绍 二维码本质上,就是一段字符串,我们可以把任意字符串,制作成一个二维码图片。在生活中,使用二维码更多的是一个URL(网址)。 引入 qrcode库 qrocde库网址:qrcode PyPI 进入网址之后…

[附源码]计算机毕业设计贷款申请审核管理系统论文Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

本地字节序与网络字节序的相互转换(IP地址、端口号)

一般数据在内存中是按照字节存储的,存储的方式分为大端和小端。在不知道对方主机的存储方式的情况下,我们不知道是否需要转换数据的存储方式。因此,TCP/IP协议规定:发送到网络的数据流应采用大端字节序! 如果当前主机…

年产3000吨原味奶糖生产车间工艺设计

目 录 摘 要 I Abstract II 1绪论 1 1.1原味奶糖的概念及其功能特性 1 1.2国外原味奶糖的现状 3 1.3我国的原味奶糖现状及开发前景 4 1.4原味奶糖原料的生产情况 4 2工艺流程设计 6 2.1 原味奶糖的生产工艺 6 2.1.1 溶糖与混合 7 2.1.2 连续真空薄膜熬糖 7 2.1.3 混合 8 2.1.4 …

阿里国际站-唤端技术的探索与演进

作者:黄昭 阿里ICBU买家增长技术团队 近几年用户增长领域APP推广发展迅猛,而唤端就是其中的重要技术。通过唤端拉新/促活不仅能能够将三方流量规模做大,同时二方流量也能有效利用,给网站不断带来商机,本文将为大家详细…

UE4虚幻引擎关于事件分发器的使用!

UE4虚幻引擎关于事件分发器的使用! 首先,这次就讲一下,事件分发器,在UI,Pawn,子actor如何进行事件传递! 首先!我们如果要使用事件分发器的原因是什么! 第一&#xff0…

Django(11):后台管理系统

目录后台管理系统基本操作管理平台的基本操作数据模型的注册和管理数据模型管理后台管理系统操作Xadmin管理平台Django内置了自己的后台管理系统,包含数据库管理和良好的界面。后台管理系统基本操作 在我们前面创建Django项目时,默认会有许多应用组件&a…

一次nginx “time out”故障排查

研发请求协助排查一个nginx故障。 描述如下: 在内部环境测试没问题。 打包到生产环境后,访问nginx接口地址超时。 研发比对后怀疑是nginx版本不一致导致。内部版本1.23.2,生产环境1.23.1. 收到信息第一感觉不是nginx的问题。不过先测试一…

五年测试经验,从二线到一线,下定决心一定要转自动化测试

一七年毕业以来自己工作也快三年左右了,自己最开始其实是想找java开发的,大学的毕设也是用jsp写的一个简单的web网站,无奈面试总被刷而且遇到了大量的培训机构。于是乎就转入软件测试这个行业。没想到啊转眼间一干就三年多了。 第一家公司 …