数据通信——应用层(超文本)

news2024/11/15 13:51:05

一,引言

所谓万维网,简单来说就是咱们经常能看见的HTTP,万维网就是基于应用层的HTTP协议出现的。伴随HTTP协议的主要一点就是超文本的概念。

二,超文本的概念 

超文本按照非线性结构,将文档中的相关内容的不同部分通过关键字建立其超链接(hypertext) ,阅读的用户可以通过超链接在文档中进行随意的跳转,这些信息还不会受到顺序和空间的限制。渐渐的,不仅文本,图形、视频、影像等媒体都开始作为了链接的对象。

超媒体系统一共分为两种:分布式超媒体系统和集中式超媒体系统。

 显而易见,万维网采用的是分布式超媒体系统。那么网络中如此多的资源,难免会有重名的,如何在网络中标识一个唯一的资源呢?

二,URL统一资源定位符

URL(统一资源定位符)为我们标识了网络中唯一的资源。它标识了该服务器上资源的路径名、资源名。URL是文件资源在Internet上范围内的扩展。

URL这个东西比较抽象,其实就是我们俗称的网址。而一般我们使用网址进行访问时其构成如下:

<访问方法>://<用户名>:<密码>@<主机>:<端口>/<URL路径>

当然了,访问方法不同,使用的端口等信息自然也不同

 三,HTTP协议

  超链接的简写为HTTP,那么他自然需要HTTP协议实现。我们常用的浏览器就是通过HTTP协议与服务器进行通信。

  HTTP协议(Hyper Test Transfer Protocol)超文本传输协议,实现了客户和服务器不同系统间的信息交流。HTTP本身是面向事物的无连接协议,但是客户程序和服务器需要通过TCP连接,来完成请求和响应。

  HTTP还具备高速缓存的能力,你首次访问一个网站或资源后,下次再访问可以从高速缓存中快速找到。但是大量的高速缓存会影响CPU的使用,因此电脑卡的时候,我们经常让你清一清缓存。

四,万维网工作流程

 上图是万维网工作流程的示意图

以我们访问百度为例:

我们在地址栏输入地址(http://www.baidu.com),之后浏览器将执行下列操作:

1.浏览器分析超链接指向页面的URL,获得服务器的名字(www.baidu.com)

2.浏览器向DNS请求解析(www.baidu.com)所对应的IP地址

3.DNS解析出目的地址的IP地址后告诉浏览器

4.浏览器使用上述的目的IP地址与www服务器通过80端口建立连接

5.浏览器接收完页面所有数据后断开与服务器的连接

6.浏览器显示index.htm的内容,同时等待用户操作,当用户进行搜索或者点击某些超链接以后,又会回到步骤1重新经历该流程。

  HTTP使用持续链接的方式进行工作持续链接的意思是万维网服务器发送响应后仍然在一段时间内保持这条连接,使得同一个客户(浏览器)和该服务器可以继续在这条连接上传送后续的HTTP请求报文和响应报文。(只要这些文档都在同一个服务器上就可以持续)。

而持续链接又分为两种方式:流水线方式和非流水线方式。

流水线方式客户收到前一个响应后才能发出下一个请求。

非流水线方式客户在收到HTTP的响应报文之前就能够接着发送新报文。

  上面两点是不是很像之前说过的TCP的两个连接方式——停止等待协议和ARQ。HTTP协议是无连接的,因此需要TCP作为其承载工具,因此它也具备TCP的某些传输特征。

五,HTML 

  HTML语言(Hyper Text Markup Language)超文本标记语言。是制作Web页面的标准语言,它将可将文本格式化!我们通过浏览器看到的页面背景、特效、字体大小等都是通过HTML语言编程后体现的。通过统一的编程进行逻辑化的设计让我们可以轻松浏览各种各样的网页。文件后带有“.html”或者“htm”的就是HTML文件。

关于HTML,我曾学过一些简单的部分,到时候会分享

六,cookie

  cookie不是曲奇,是用来存放用户信息的。每个站点使用cookie来追踪用户。cookie表示在HTTP服务器和客户之间传递的状态信息。使用cookie的网站服务器为用户产生一个唯一的识别码,这个识别码可以追踪用户在网站上的活动。因此,我们浏览网页时常会提醒是否允许cookie,也就是留下在网页中的活动。一般的,我们不推荐在一些未知网站或者个人网站上留有cookie,这是为了预防安全问题。

七,后续

HTTP对于通信而言只是一个协议,但是HTTP引申出来的内容很多,再往后谈论就是程序编程和计算机系统架构的事请了,我学过一些简单的常用的HTML语句和知识,回头给大家分享。至于从Telnet到万维网和HTTP,就到这里吧

 

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

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

相关文章

新手班主任必备神器

Hello各位亲爱的老师们&#xff0c;你们是否曾经为了查询学生成绩而头痛不已&#xff1f;是否曾经为了家长会前的准备工作而熬夜奋战&#xff1f;今天&#xff0c;我要给大家安利一个超级好用的班级查询系统&#xff0c;让你的工作轻松许多&#xff01; 那么什么是班级查询系统…

Javascript 函数 笔记/练习

函数 function 又称方法 (method) 自定义函数 是一段预定义好的并且可以反复使用的代码块 定义 <script>function print_name(){document.write("name")} </script>函数调用 直接调用 单独开辟一块内存空间&#xff0c;私有&#xff0c;其中定义的变…

QT读取Excel表格内容到Table Widget

QT读取Excel表格内容到Table Widget_qt导入excel-CSDN博客有一个需求是要把Excel的数据导入到QT的Table Widget表格中。我是一个QT新手&#xff0c;在网上找了很多方法&#xff0c;在这里汇总记录一下。目前总共有四种方法&#xff1a;其中方法适用于不加密的Excel文件&#xf…

大模型LLM相关面试题整理

0 一些基础术语 大模型&#xff1a;一般指1亿以上参数的模型&#xff0c;但是这个标准一直在升级&#xff0c;目前万亿参数以上的模型也有了。大语言模型&#xff08;Large Language Model&#xff0c;LLM&#xff09;是针对语言的大模型。175B、60B、540B等&#xff1a;这些一…

元梦之星内测上线,如何在B站打响声量?

元梦之星是腾讯天美工作室群研发的超开星乐园派对手游&#xff0c;于2023年1月17日通过审批。该游戏风格可爱软萌&#xff0c;带有社交属性&#xff0c;又是一款开黑聚会的手游&#xff0c;备受年轻人关注。 飞瓜数据&#xff08;B站版&#xff09;显示&#xff0c;元梦之星在…

(热门推荐)天津web前端培训班 Web前端学习顺序

互联网行业的热门职业之一的Web前端开发&#xff0c;一直备受大家关注&#xff0c;随着技术的不断进步和互联网的快速发展&#xff0c;2023年对于Web前端来说&#xff0c;前景可谓一片光明。 Web前端发展前景 伴随着人工智能、物联网、5G的发展&#xff0c;各大门户网站、APP…

了解C语言中的atoi函数和模拟实现

目录 1. atoi函数 1.1 函数的声明 1.2 函数的作用 1.3 函数的使用 2. 模拟实现atoi函数 2.1 整理思路 2.2 整份代码 1. atoi函数 1.1 函数的声明 int atoi (const char * str); 1.2 函数的作用 将字符串转化为int类型的数据。转化string字符串里面的涉及到可以转化…

如何用U盘重装系统Win10专业版

我们每天办公都会用到电脑&#xff0c;如果电脑系统出现崩溃或中病毒了&#xff0c;那是非常影响自己的工作效率。如果您的系统出现问题了&#xff0c;可以考虑重装系统&#xff0c;轻松快速解决系统问题。接下来小编给大家介绍利用U盘重装Win10系统专业版的简单步骤&#xff0…

KT142C语音芯片,支持dac和直驱扬声器,dac没声音,怎么回事

KT142C的芯片&#xff0c;支持dac和直驱扬声器&#xff0c;dac没声音&#xff0c;怎么回事&#xff1f; 首先芯片是支持DAC和PWM输出直驱扬声器的&#xff0c;但是请注意&#xff0c;不是同时支持&#xff0c;只能二选一 》默认出厂的芯片是PWM直驱扬声器【芯片的13/14脚--部分…

推进控制系统阀组比例阀放大器

推进控制系统阀组是一种控制阀组&#xff0c;在盾构机推进系统中具有重要的作用。 推进控制系统阀组包括&#xff1a;阀块、比例减压阀、逻辑阀、电磁换向阀和油缸伸缩控制阀组。 比例减压阀安装在阀块的上表面&#xff0c;与逻辑阀并联&#xff1b;逻辑阀安装在阀块侧表面&a…

团购列表.

<!DOCTYPE html> <html><head><title>团购列表</title><meta http-equiv"content-type" content"text/html; charsetutf-8"/><meta name"apple-mobile-web-app-capable" content"yes"/><…

内核编译,进程调度

目录 1 下载源代码2 编译2.1 编译错误 3 安装3.1 模块安装操作&#xff1a;sudo make modules_install3.2 安装内核 sudo make install3.3 验证安装 4 进程调度CFS及4个调度类4.1 调度4.2 调度类4.3 调度类可分为5种4.4 进程优先级4.5 进程分类4.6 内核调度策略 1 下载源代码 …

RESR开发

REST简介 REST(Representation State Transfer),表现形式状态转换 优点 隐藏资源的访问行为&#xff0c;无法通过地址得知对方资源是何种操作书写简化 按照REST风格访问资源时使用行为动作区分对资源进行了何种操作。 根据REST风格对资源进行访问是RESTFUL REST风格 Restfu…

Spring Security静态资源过滤(11)

在一个实际项目中&#xff0c;并非所有的请求都需要经过Spring Security过滤器&#xff0c;有一些特殊的请求&#xff0c;例如静态资源等&#xff0c;一般来说并不需要经过Spring Security过滤器链&#xff0c;用户如果访问这些静态资源&#xff0c;直接返回对应的资源即可。 …

oracle11g安装图解

软件需求 1.安装CentOS6.5的服务器一台 2.Oracle 11g 安装介质: linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip 3.命令行客户端工具xshell、crt或者putty 4.图形界面客户端工具Xming 系统配置检查 1.内存检查 grep MemTotal /proc/m…

nginx 内存管理(一)

文章目录 前提知识nginx内存管理的基础内存分配不初始化封装malloc初始化malloc 内存池内存池结构清理函数cleanup大块内存large 创建内存池申请内存void *ngx_palloc(ngx_pool_t *pool, size_t size)void *ngx_pnalloc(ngx_pool_t *pool, size_t size)void *ngx_pcalloc(ngx_p…

【Ant Design Table + React】表格列伸缩实现

需求背景&#xff1a;需要实现Antd Table 组件的列伸缩&#xff0c;宽度可以拖拽 在Antd 3.x 的版本中是保留的列伸缩的Demo例子的&#xff1a; 借助 react-resizable 可以实现伸缩列。 # npm 安装 npm install react-resizable --save# yarn 安装 yarn add react-resizable参…

字符函数和字符串函数(详解大全)

重点 C语言中对字符和字符串的处理很是频繁&#xff0c;但是C语言本身是没有字符串类型的&#xff0c;字符串通常放在 常量字符串 中或者 字符数组 中。 字符串常量 适用于那些对它不做修改的字符串函数. 1.函数介绍 1.1strlen size_t strlen ( const char * str ); ⭐字符…

Linux——centos7.4磁盘空间调整分配

安装centos7.4操作系统时&#xff0c;采用默认安装方式&#xff0c;导致磁盘分配不太合理&#xff0c;于是重新进行磁盘空间分配。 1、cnetos7.4默认安装完成时磁盘分配情况 可以看到/dev/mapper/centos-home分区占用大部分空间&#xff0c;如今想将根目录空间增大。 注意&…

pandas写入MySQL

安装好pandas、mysql pip install pandas pip install pymysql 导入pandas、mysql import pymysql as mysql import pandas as pd 建立连接 conmysql.connect(host10.10.0.221,userroot,passwordroot,databasepandas,port3306,charsetutf8) 创建游标 curcon.cursor() 读…