408计网应用层总结

网络应用模型

    ■客户/服务器模型(C/S):客户是服务请求方,服务器是服务提供方
    ■P2P模型:各主机都是客户,也都是服务器(任意一对计算机成称为对等方)

注:
    1.客户端必须提前知道服务器的地址 ,而服务器不需要提前知道客户端的地址
    2.客户端主要实现如何显示信息与收集用户的输入,而服务器主要实现数据的处理 
    3.浏览器显示的内容来自服务器 
    4.客户端是请求方,连接建立后,服务器可以主动发送数据(如:错误通知)
    5.P2P网络是指在互联网中由对等结点组成的一种覆盖网络( Overlay Network ),是一种动态的逻辑网络,不是物理网络。
    6.在向多个用户发送一个文件的时候,P2P模型通常比C/S模型所需时间短
 

域名系统DNS

层次域名空间
    ●顶级域名(.com)
    ●二级域名(baidu)
    ●三级域名(www)

域名服务器
    1.根域名服务器(所有的根域名服务器都知道顶级域名服务器的IP地址)
    2.顶级域名服务器
    3.权限域名服务器
    4.本地域名服务器

域名解析过程
    ●递归查询(实际中几乎不用)
    ●递归与迭代相结合的查询

注:
    1.多个MAC地址,IP地址,主机都可以对应一个域名
    2.Internet上提供的主机一定要有IP地址,不一定要有域名
    3.在域名解析过程中,主机上请求域名解析的软件需要知道本地域名服务器的 IP。(正常情况下,客户机只需把域名解析请求发往本地域名服务器,其他事情都由本地域名服务器完成,并把最后结果返回给客户机。所以主机只需要知道本地服务器的IP)
    4.每台主机都必须在授权域名服务器处注册登记,授权域名服务器一定能够将其管辖的主机名转换为该主机的 IP 地址。
    5.DNS采用UDP来传输数据, UDP 是一种面向无连接的协议

文本传输协议(FTP)

FTP
    ●控制连接(21)
    ●数据连接(20)
 

注:
    1.控制连接使用 TCP 的21号端口,数据连接使用 TCP 的20号端口
    2.客户进程的端口号是客户进程自己提供的
    3.http使用80端口号,SMTP使用25端口号
    4.允许客户指名文件的类型与格式
    5.FTP 服务器的数据要经过应用层、传输层、网络层、数据链路层及物理层,对应的就是数据、数据段、数据报、数据帧、比特。
    6.FTP 客户和服务器间传递 FTP 命令时,使用的连接是:建立在 TCP 之上的控制连接
    7.控制连接存在于整个 FTP 会话过程中,数据连接在每次文件传输时才建立,传输结束就关闭。

电子邮件

电子邮件的格式:用户名@邮箱所在主机的域名(5211314@163.com)

SMTP:C/S处理方式,使用的是TCP连接,端口号是25
    ●连接建立
    ●邮件传送
    ●连接释放

POP3和IMAP:
    ●POP3是C/S,TCP,端口号为110
    ●POP3是有连接可靠的数据传输

注:
    1.随着万维网的流行,用户浏览器与 Hotmail 或 Gmail 的邮件服务器之间的邮件发送或接收使用的是 HTTP (如aba@163.com),而仅在不同邮件服务器之间传送邮件时才使用 SMTP 。
    2.SMTP只能传输一定长度的ASCII码邮件,只支持传输7比特的ASCII码内容
    3.POP3协议基于 ASCII 码,如果要传输非 ACSII 码的数据,那么要使用 MIME 将数据转换成 ASCII 码形式。
    4.MIME(多用途网际邮件扩充)可以传输文字,语音,图像和视频等多种信息
    5.POP3协议在传输层是使用明文来传输密码的,并不对密码进行加密
 

万维网

万维网的内核由三个部分:
    ●统一资源定位符(URL)
    ●超文本传输协议(HTTP)
    ●超文本标记语言(HTML)

URL:
URL格式:<协议>://<主机>:<端口>/<路径>
如:https://yzb.cust.edu.cn/ssszs/index.htm

HTTP的特点:
    ●HTTP 使用 TCP 作为传输层协议,保证了数据的可靠传输。
    ● HTTP 不必考虑数据在传输过程中被丢弃后又怎样被重传。
    ●HTTP 本身是无连接的。
    ●虽然 HTTP 使用了 TCP 连接,但通信的双方在交换 HTTP 报文之前不需要先建立 HTTP 连接。 
    ●HTTP 是无状态的。服务器并不记得曾经访问过的这个客户,也不记得为该客户曾经服务过多少次。
    ●即可以非持久连接,也可以持久连接
 

import requests	# 导入requests模块
url = 'http://www.baidu.com/s?wd=你是我的神'
headers = {'Content-Type': 'text/html;charset=utf-8','User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36'}
r = requests.get(url,headers=headers)
print(r.headers)

HTTP的报文结构
    ●请求报文
    ●响应报文

 

注:
    1.可以在 HTTP 中使用 Cookie 保存 HTTP 服务器和客户之间传递的状态信息
    2.Cookie由服务器产生,储存在用户主机中的文本文件
    3.Connection :连接方式, Close 表明为非持续连接方式, keep-alive 表示持续连接方式。

 

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

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

相关文章

Overloud TH-U Complete for Mac:演绎您的音乐世界

Overloud TH-U Complete for Mac是一款功能强大的吉他谱曲软件,可以让您在Mac电脑上轻松进行吉他模拟、录音和混音等操作,创作属于自己的音乐作品。 Overloud TH-U Complete for Mac提供了丰富的吉他模拟和音效库,涵盖了多种吉他放大器、箱体…

Autosar深入-MPU

MPU目录 MPU介绍MPU相关概念一、MPU原理和作用二、AUTOSAR OS SC3/4功能:内存保护2.1 Davinci实践1.特权/用户都可读写(区域1)2.属于区域1的子集(区域2)3.仅用户读写三、ld文件配置四、代码中指定变量区域五、编译输出的.map文件MPU介绍 MPU : Memory Protection Unit: 内…

云原生定义整理

云原生定义整理 Pivotal 是云原生应用的提出者&#xff0c;并推出了 Pivotal Cloud Foundry 云原生应用平台和 Spring 开源 Java 开发框架&#xff0c;成为云原生应用架构中先驱者和探路者。 Pivotal最初的定义 Pivotal公司的Matt Stine在2015年写了一本叫做<<迁移到云…

计算机考研 | 2016年 | 计算机组成原理真题

文章目录 【计算机组成原理2016年真题44题-9分】【第一步&#xff1a;信息提取】【第二步&#xff1a;具体解答】 【计算机组成原理2016年真题45题-14分】【第一步&#xff1a;信息提取】【第二步&#xff1a;具体解答】 【计算机组成原理2016年真题44题-9分】 假定CPU主频为5…

Docker项目部署

目录 一、前端项目部署 1、上传文件 2、开启容器 3、测试 二、后端项目部署 1、打包java项目 2、将jar包和Dockerfile文件长传到Linux系统 3、构建镜像 4、开启容器 5、测试 三、DockerCompose快速部署 基本语法 一、前端项目部署 1、上传文件 里面包括页面和配置文…

【c++设计模式之中介者模式】分析及示例

中介者模式属于行为型设计模式&#xff0c;旨在减少对象之间的耦合关系&#xff0c;通过引入一个中介者对象&#xff0c;将对象间复杂的交互转化为中介者与对象之间的简单交互&#xff0c;中介者模式实现了集中式控制&#xff0c;有助于系统的维护和扩展。 以下是一个使用中介…

秋招校招,什么是群面?

时间已经来到十月份&#xff0c;我们也迎来了秋季招聘的高峰期。一般来说&#xff0c;企业为了提高面试的速度&#xff0c;一般都会让我们进行群面。可是&#xff0c;很多人不懂得“群面”的意思&#xff0c;由此导致自己在面试环节丢分。今天&#xff0c;就跟着小编一起来了解…

【C++ techniques】虚化构造函数、虚化非成员函数

constructor的虚化 virtual function&#xff1a;完成“因类型而异”的行为&#xff1b;constructor&#xff1a;明确类型时构造函数&#xff1b;virtual constructor&#xff1a;视其获得的输入&#xff0c;可产生不同的类型对象。 //假如写一个软件&#xff0c;用来处理时事…

Spring Webflux DispatcherHandler源码整理

DispatcherHandler的构造(以RequestMappingHandlerMapping为例) WebFluxAutoConfiguration中EnableWebFluxConfiguration继承WebFluxConfigurationSupportBean public DispatcherHandler webHandler() {return new DispatcherHandler(); }DispatcherHandler#setApplicationCon…

移除元素(简单)

优质博文&#xff1a;IT-BLOG-CN 一、题目 给你一个数组nums和一个值val&#xff0c;你需要"原地"移除所有数值等于val的元素&#xff0c;并返回移除后数组的新长度。不要使用额外的数组空间&#xff0c;你必须仅使用O(1)额外空间并"原地"修改输入数组。元…

【微服务的集成测试】python实现-附ChatGPT解析

1.题目 微服务的集成测试 知识点:深搜 时间限制: 1s 空间限制: 256MB 限定语言:不限 题目描述: 现在有n个容器服务,服务的启动可能有一定的依赖性 (有些服务启动没有依赖)其次服务自身启动加载会消耗一些时间。 给你一个 nxn 的二维矩阵 useTime,其中 useTime[i][i]=10 表示…

阿里云关系型数据库有哪些?RDS云数据库汇总

阿里云RDS关系型数据库大全&#xff0c;关系型数据库包括MySQL版、PolarDB、PostgreSQL、SQL Server和MariaDB等&#xff0c;NoSQL数据库如Redis、Tair、Lindorm和MongoDB&#xff0c;阿里云百科分享阿里云RDS关系型数据库大全&#xff1a; 目录 阿里云RDS关系型数据库大全 …

QT实现TCP服务器客户端的实现

ser&#xff1a; widget.cpp&#xff1a; #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);//实例化一个服务器server new QTcpServer(this);// 此时&#xf…

嵌入式软件架构中抽象层设计方法

大家好&#xff0c;今天分享一篇嵌入式软件架构设计相关的文章。 软件架构这东西&#xff0c;众说纷纭&#xff0c;各有观点。什么是软件架构&#xff0c;我们能在网上找到无数种定义。 比如&#xff0c;我们可以这样定义&#xff1a;软件架构是软件系统的基本结构&#xff0c…

g(x)=abx形式的函数最小二乘法计算方法

设函数&#xff0c;利用最小二乘法求解系数a和b: 设&#xff0c;&#xff0c;有 用最小二乘法求解和后&#xff0c;可得和&#xff1a; &#xff0c;

【网络安全---ICMP报文分析】Wireshark教程----Wireshark 分析ICMP报文数据试验

一&#xff0c;试验环境搭建 1-1 试验环境示例图 1-2 环境准备 两台kali主机&#xff08;虚拟机&#xff09; kali2022 192.168.220.129/24 kali2022 192.168.220.3/27 1-2-1 网关配置&#xff1a; 编辑-------- 虚拟网路编辑器 更改设置进来以后 &#xff0c;先选择N…

用pyinstaller打包LGBM模型为ELF/EXE可执行文件

1. 引入 写好的python代码和模型&#xff0c;如果需要做到离线部署、运行&#xff0c;就必须要将代码和模型打包为可独立运行的可执行文件。 使用pyinstaller就能做到这个&#xff0c;相同的代码&#xff0c;在windows上运行就能打包为exe&#xff0c;在linux上运行就能打包为…

android studio导入android源码模块开发总结

一、aidegen自动生成并导入android模块 1.源码下载后&#xff0c;键入 . build/envsetup.sh lunch sdk_car_x86_64-userdebug 以上命令执行后&#xff0c;tools/asuite/aidegen的源码会被编译为aidegen可执行文件 2.使用aidegen生成并自动导入模块 aidegen Settings -i j -…

AJAX和JSON

1、AJAX&#xff1a; AJAX&#xff08;Asynchronous JavaScript and XML&#xff09;是一种用于创建交互式、动态网页的技术。它允许网页在不重新加载整个页面的情况下与服务器进行异步通信&#xff0c;从而改善用户体验。以下是关于AJAX的一些重要信息&#xff1a; 异步通信&a…

银行业务队列简单模拟(队列应用)

设某银行有A、B两个业务窗口&#xff0c;且处理业务的速度不一样&#xff0c;其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时&#xff0c;B窗口处理完1个顾客。给定到达银行的顾客序列&#xff0c;请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到达的时…