电脑装配网

数据侦探:揭秘网页的走法了解浏览数据传输神秘面纱

 人阅读 | 作者xiaolin | 时间:2023-12-03 19:33

用IP地址等互联网协议信息来识别网络用户的行为是一种常见的方式,它可以帮助平台更好地了解用户需求并提供更个性化的服务,假设你是一名电商网站的运营者,你的网站上有许多不同的商品,包括衣服、鞋子、电子产品等等。每当用户访问你的网站时,你都会记录下他们的IP地址。通过分析这些IP地址,你可以发现某些地区的用户对某些商品更感兴趣。例如,你可能会发现来自广东的用户更喜欢购买衣服,而来自北京的用户更喜欢购买电子产品。

根据这些信息,你可以为来自不同地区的用户展示不同的商品。当一个来自广东的用户访问你的网站时,你可以向他们展示更多的衣服商品;而当一个来自北京的用户访问你的网站时,你可以向他们展示更多的电子产品商品。这样可以提高用户体验和转化率。

为什么IP地址是分配给每个互联网设备(如计算机、智能手机、平板电脑等)的唯一标识符。它由四个数字组成,每个数字在0到255之间。这些数字是由点号分隔的,每个部分称为一个八位组。例如,192.168.1.1是一个常见的IP地址,其中192是第一个八位组,168是第二个,1是第三个,1是第四个。

由于IP地址是唯一的,因此可以通过它来识别互联网设备。当一个设备连接到互联网时,它会被分配一个IP地址,这个地址与该设备的身份相关联。通过追踪IP地址,可以确定设备的来源、位置和活动。

例如192.168.1.1。当你的设备访问网站或使用在线服务时,咱们的设备会与网络上的服务器进行通信。

设备与网络上的服务器进行通信,的过程设备首先需要找到网络上的服务器。这通常通过使用DNS(域名系统)来完成。DNS将网站的域名(例如www.example.com)转换为可以在网络上路由的IP地址(例如192.0.2.1)。一旦设备获得了服务器的IP地址,它就可以通过互联网建立与该服务器的连接。

一旦连接建立,设备会通过发送一个“SYN”(同步)信号开始建立一个通信会话。服务器在收到SYN信号后,会回应一个“SYN-ACK”(同步确认)信号,表示它已经准备好开始通信。

一旦会话建立,设备就可以开始向服务器发送数据。这些数据可以是HTTP请求(例如GET或POST请求),也可以是其他类型的请求(例如FTP请求等)。服务器在接收到数据后,会进行处理并返回响应。

一旦通信完成,设备会发送一个“FIN”(结束)信号来关闭会话“FIN”是英语单词“fin”的缩写,意思是“鳍”。它通常用于描述鱼的鳍或鳍状物,也可以指车辆、航空器等用以保持平衡的突出窄扁部分。这个单词的由来可以追溯到拉丁语中的“finem”,意思是“结束”或“末尾”。在数据通信中,“FIN”也可以表示“结束”,通常在TCP协议中,当一方接收到另一方发送的数据后,会回复一个带有“FIN”标志的数据包,表示传输结束。

服务器在收到FIN信号后,会回应一个“ACK”(确认)信号,表示会话已经成功关闭ACK是"Acknowledgment"的缩写,它在TCP协议中用来确认接收到的数据。当一个TCP连接的一端接收到一个数据包时,它会将ACK标志位设置为1,并发送给另一端。这个数据包中会包含一个确认序列号,表示已经接收到哪些数据包。这个机制保证了数据的可靠传输。在TCP协议中,数据传输是以分段进行的。TCP协议将数据划分为多个分段,每个分段都是独立的消息单元,并独立进行确认和错误处理。因此需要确认每个分段是否正确接收。

当咱们设备(如电脑、手机或其他智能设备)是数据的起点和终点。当咱们在浏览器中输入网址并按下回车键时,咱们的设备会向服务器发送一个HTTP请求。这个请求会被封装在一个或多个TCP分段中,然后通过互联网传输。

咱们的设备首先会将数据发送到本地网络中的路由器或交换机。这些设备负责将数据包路由到正确的目的地。

咱们的ISP是拥有和运营咱们的家庭或企业网络的实体。他们提供给咱们接入互联网的权限,并通过他们的网络将你的数据发送到更广泛的世界。

比如电信公司(如AT&T、Verizon或Comcast)拥有和运营大型的电信网络,这些网络包括光纤、卫星和无线通信设施。他们负责将你的数据发送到咱们目标服务器经过的路径中的下一个路由器或交换机。

为了提高数据传输的效率和可用性,许多网站使用CDN来分发他们的内容。CDN位于全球各地,并由不同的公司运营,如Akamai、Cloudflare等。当咱们的设备请求一个网页时,数据可能会首先被发送到一个离你近的CDN节点,然后再从那里路由到你的目标服务器。

最终的目标服务器是数据的终点。当服务器收到数据后,会对每个TCP分段进行确认,并向发送方发送确认消息。如果发送方没有收到确认消息,它可能会重传数据。

总的来说,TCP协议通过分段传输数据并需要确认每个分段是否正确接收,以确保数据的完整性和可靠性。这个过程涉及到的公司和实体包括用户的设备、本地网络、ISP、电信公司、CDN以及目标服务器。

例如,当你在浏览器中输入一个网址并按下回车键时,这个动作会导致你的设备(如手机或电脑)与网络上的服务器进行通信。在这个过程中,你的设备可能会通过一个或多个路由器,这些路由器是由不同的网络服务提供商(如AT&T、Verizon或Comcast)拥有和运营的。

AT&T成立于1877年,当时作为美国电话电报公司(American Telephone and Telegraph Company)的一部分。1984年,经过一系列的拆分和重组,分离出了现在的AT&T公司。

AT&T提供广泛的服务,包括固定电话、移动电话、互联网接入、电视服务,以及各种企业解决方案。他们还提供各种消费者电子产品,如智能手机、平板电脑等。

Verizon的前身是美国电话电报公司的无线部门,于1996年独立出来并命名为Verizon,Verizon主要提供无线通信服务,包括手机、平板电脑、无线上网卡等设备的移动数据服务。他们还提供家庭互联网服务,以及为企业提供的网络解决方案。

Comcast成立于1963年,起初作为一家有线电视公司。随着时间的推移,他们扩展了业务范围,包括提供互联网接入、电话服务、以及Xfinity品牌的家庭娱乐服务,Comcast主要提供电视、互联网和电话服务。他们还提供各种与娱乐相关的产品和服务,如电影租赁、音乐流媒体等。

除这些公司还有一些著名的公司也有和他们相似的业务,如Aapple虽然Apple的主要业务是生产消费电子产品,如iPhone、iPad、Mac等,但他们的Apple TV+和Apple Music等服务也进入了电视和音乐市场。

Google提供各种互联网服务,包括搜索引擎、在线广告、云计算等。他们还通过Google Fiber提供互联网接入服务,并与Verizon合作提供5G网络。

Amazon起初是一家在线零售商,但随着时间的推移,他们通过Amazon Web Services(AWS)进入了云计算市场,并提供各种与电子商务相关的服务。

Microsoft的主要业务是生产软件和操作系统,如Windows、Office等。但近年来,他们也通过Xbox和Game Pass等服务进入了游戏和娱乐市场。

此外,为了将数据从设备发送到服务器,可能会使用各种不同的协议(如HTTP、HTTPS、FTP等)。

这些协议是由互联网工程任务组(IETF)和其他标准化组织开发和维护的。

这些协议定义了数据如何在网络中传输,以及设备和服务器应如何处理和解析这些数据HTTP(Hypertext Transfer Protocol)是一种用于传输超文本和其他内容的应用层协议。

HTTPS(Hypertext Transfer Protocol Secure)是HTTP的安全版,它使用SSL(Secure Sockets Layer)协议对传输的数据进行加密,以保证数据的安全性和完整性。HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

那么HTTP协议的工作流程是怎么样的呢?

假如Web浏览器向Web服务器发送一个HTTP请求,请求指定的网页或资源, Web服务器接收到请求后,将响应发送回Web浏览器。响应包括网页或资源的内容以及HTTP响应状态码。

这时Web浏览器根据响应状态码判断响应是否成功,如果成功,则显示网页或资源的内容;否则,会显示错误信息。

HTTP协议它的有点是多样的,比如:

1. 无连接:每个请求都需要与服务器建立一个新的连接,请求处理完毕后立即断开连接。

2. 无状态:服务器不会为每个请求保留状态信息,即每个请求都是独立的。

3. 支持B/S模式:HTTP协议是互联网上应用最广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。

4. 简单快速:客户端向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、POST、PUT、DELETE等。由于HTTP协议简单,使得http的应用非常广泛快速。

5. 灵活:HTTP允许传输任意类型的数据,传输的类型由Content-Type加以标记。

6. 无须长时间连接:HTTP协议简化了网络连接,因此,当WEB服务器发送完应答后,即断开TCP/IP连接。使用这种方式可以节省传输时间。

7. 支持缓存:HTTP协议中的Last-Modified/ETag,If-Modified-Since/If-None-Match等字段用于支持协商缓存,提高网络应用的性能。

它是互联网上最常用的协议之一,用于在Web浏览器和Web服务器之间进行通信。HTTP协议基于TCP(Transmission Control Protocol)协议,它是一种无连接的协议,可以为上层协议提供可靠的数据传输服务TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。

TCP在因特网协议族(TCP/IP协议族)中担任主要的传输协议,为许多应用程序(如Web浏览器和电子邮件客户端)提供可靠的数据传输服务。

TCP协议的参与者包括以下实体:

1. 发送方:发送方是产生和发送TCP数据包的计算机系统。它负责将数据按照TCP协议规定的格式进行封装,并通过网络发送给接收方。发送方负责建立和维护与接收方之间的连接。

2. 接收方:接收方是接收和解析TCP数据包的目标计算机系统。它负责接收来自发送方的数据包,并根据TCP协议进行解析,提取出有用的数据。接收方也负责向发送方发送确认(ACK)和丢包重传(NACK)等控制信号,以确保数据的可靠传输。

3. 网络:网络是TCP协议传输数据的载体。它由各种物理和逻辑设备组成,如路由器、交换机、网络接口卡等。网络设备负责将TCP数据包从一个节点传输到另一个节点,直至将数据包送达目标接收方。

那么TCP协议的有哪些内容呢?这里大概写出它几个主要的内容:

1. 连接建立:TCP协议使用三次握手(3-way handshake)机制来建立连接。在连接建立过程中,发送方和接收方通过交换一系列的SYN(同步)和ACK(确认)报文来确认彼此的可达性和双方发送接收数据的能力。一旦连接建立成功,就可以开始传输数据。

2. 数据传输:TCP协议使用字节流方式进行数据传输。它将数据看作一连串的字节,并不关心数据的具体含义。发送方将数据按照TCP规定的格式进行封装,通过网络发送给接收方。接收方接收到数据后,根据TCP协议进行解析,提取出有用的数据。

3. 流量控制:TCP协议使用滑动窗口机制进行流量控制。接收方维护一个窗口,用于控制接收数据的速度。窗口的大小可以根据网络状况和接收方处理能力进行动态调整。如果窗口大小较小,接收方会因为无法处理更多的数据而发送一个“窗口更新”(Window Update)报文给发送方,要求减小发送速率。如果窗口大小较大,接收方会在接收到一定数量的数据后发送一个“确认”(ACK)报文给发送方,表示可以继续发送数据。

4. 拥塞控制:TCP协议使用拥塞控制机制来避免网络拥塞。当网络出现拥塞时,发送方会根据拥塞情况调整发送速率,以避免过多的数据拥塞网络。TCP使用一系列的拥塞控制算法(如慢开始、拥塞避免、快重传等)来动态地调整发送速率,以最小化网络拥塞并最大化吞吐量。

5. 错误处理:TCP协议使用确认和重传机制来处理错误。发送方在发送数据后需要等待接收方的确认报文。如果发送方没有收到确认报文,就会重传数据,直到收到确认报文或者超过一定的重传次数限制。此外,接收方也会对收到的数据进行校验和检查,如果有错误就会向发送方发送“差错报告”(ERR)报文,要求重新发送数据。

FTP(File Transfer Protocol)是文件传输协议,它是一种用于在网络上进行文件传输的标准协议。FTP协议支持匿名访问和身份验证,可以用于在互联网上上传和下载文件。FTP协议基于TCP协议,使用主动连接和被动连接两种方式进行数据传输。

当数据到达服务器时,服务器上的软件(如Apache、Nginx等)会处理这些数据,在这里先介绍Apache 和 Nginx 都是流行的 Web 服务器软件,它们都可以用来处理和响应来自互联网的请求。

Apache 是由 Apache 软件基金会开发和维护的一个开源项目。它是最流行的 Web 服务器软件之一,自 1995 年以来一直处于领先地位。Apache 的名字来源于"Apache Group",这是一个由一群志愿者组成的团体,他们为了共同的目标和兴趣,开始开发一个 Web 服务器。

Apache 的主要特点是它的稳定性和可扩展性。它支持多种编程语言(如 C、C++、Python、Java 等),并且可以运行在几乎所有的操作系统上,包括 Windows、Linux、Unix、macOS 等。Apache 的模块化设计使得它可以通过添加不同的模块来扩展其功能,比如 SSL 加密、身份认证、URL 重写等。

这样说应该很难理解打个比方吧就好比在烹饪的比喻中,Apache 可以被看作是一个厨师,他可以根据客人的口味(通过配置文件)准备不同的菜肴(Web 页面)。这个厨师(Apache)可以添加各种调料(模块)来增强菜肴的味道(功能)。

那么Nginx 是什么呢?它由 Igor Sysoev 在 2002 年为俄罗斯的一家公司开发的。Igor Sysoev 是俄罗斯的一位系统管理员和程序员,他为了解决他的网站性能问题,创建了 Nginx。Nginx 的名字来源于 "engine X",这是它的早期开发代号。

Nginx 的主要特点是它的高性能和低内存占用。Nginx 是为处理高并发请求而设计的,它可以轻松地处理数以万计的并发连接。此外,Nginx 的内存占用很小,这使得它可以在资源有限的环境中运行。Nginx 支持的事件驱动模型使其在处理大量并发连接时更加高效。

在烹饪的比喻中,Nginx 可以被看作是一位忙碌的厨师,他可以同时为许多客人准备餐点(高并发处理),并且只使用很少的厨具和空间(低内存占用)。这位厨师(Nginx)专注于提供高质量的食物(高性能和低内存占用)。

Apache 和 Nginx 都是优秀的 Web 服务器软件,它们都有各自的优点。Apache 以其稳定性和可扩展性而闻名,而 Nginx 则以其高性能和低内存占用而受到赞誉。选择哪一个取决于咱们的具体需求和环境。

处理这些数据,并根据请求的类型和内容返回相应的响应。例如,如果请求的是一个网页,服务器会返回HTML代码,这些代码将被设备上的浏览器解析并显示为网页。在这个过程中,可能会使用各种不同的技术和工具,包括数据库管理系统(如MySQL或PostgreSQL)、服务器端脚本语言(如PHP、Python或Ruby),以及各种其他类型的软件和服务。

简单的说,设备与网络上服务器进行通信的过程涉及多个步骤和多个公司和实体。这个过程使得我们能够通过网络进行各种活动,包括浏览网页、购物、社交、工作等,服务器会记录你的IP地址,并可以通过分析该地址来大致确定你的地理位置和在线行为。

在互联网的早期,人们需要一种方法来标识和路由互联网上的设备。IP地址的发明解决了这个问题,使得数据可以在互联网上正确传输。通过使用IP地址,可以将数据发送到正确的设备,即使这些设备分布在全世界各地。

IP地址是由美国国防部高级研究计划署(ARPA)发明的,该机构在1983年开发了TCP/IP协议,这是一种用于互联网通信的标准协议,美国国防部高级研究计划署(ARPA)是一个负责研发先进技术以应对国家安全挑战的美国国防部机构。

它成立于1958年,(1958年,我们这块地也有不少成就比如,第一台计算机——103型通用数字电子计算机研制成功,运行速度每秒1500次。,昆明到大理铁路开始铺轨,铁道兵们决心在年底把钢轨铺到平浪矿区,兰新铁路的铺轨工程于4月28日开始向哈密挺进,预计8月中旬可铺到甘肃和新疆交界的红柳河车站,10月越过新疆的哈密,年底到达十三间房车站,1958年2月19日,中朝两国政府发表联合声明,宣布将于1958年底前志愿军撤军朝鲜。这被视为中朝两国友好关系的一个重要里程碑。有趣的是,后来朝鲜最高领导人金日成访华期间,毛泽东主席曾戏谑地说:“我们请你吃顿饭不容易哦,因为你总是上战场。”等等......)

当时被称为ARPA,现在的名字是DARPA。DARPA的使命是防止军事技术威胁,并确保美国在应对不断变化的全球威胁方面保持领先地位。

DARPA的故事有很多,例如,DARPA曾经开发了一个名为“深海计划”的项目,该项目旨在通过在海底建立一系列通讯中继站来创建一个新的通讯网络。这个项目的想法是,即使在核战争中,这些中继站也可以幸免于难,从而保证通讯的连续性。然而,这个项目被认为过于昂贵且不切实际,因此被取消了。

他们的故事有很多再讲另一个有趣的例子是DARPA的“黑暗计划”,该计划旨在开发一种能够在战争中起到关键作用的先进技术。这个计划的神秘性质和高度机密性使得公众对它的了解非常有限。然而,据说这个计划涉及到一个名为“全球定位系统”(GPS)的项目,这个项目在20世纪70年代被美国军方启动,目的是在战争中通过卫星定位技术为部队提供精确的导航信息。

至于DARPA的开发IP的故事,可以追溯到1960年代末期。当时,由于美国国防部对通信技术的需求日益增长,DARPA开始着手解决这个问题。他们意识到,通过开发一种名为“互联网协议”(IP)的技术,可以解决各种计算机系统之间的通信问题。于是,DARPA开始了一项名为“IPTO”(IP传输试验)的项目,该项目旨在开发一种能够使各种计算机系统之间进行通信的技术。这个项目最终导致了TCP/IP协议的诞生,而TCP/IP协议成为了现代互联网的基础。

在1969年9月,美国国防部高级研究计划署(ARPA,现在的DARPA)启动了阿帕网(ARPANET),这是一个使用TCP/IP协议的计算机网络。阿帕网最初是为了满足ARPA研究人员之间的通信需求而建立的,但是它的规模迅速扩大,最终成为了互联网的重要组成部分。

总的来说,美国国防部高级研究计划署(DARPA)是一个充满创新和冒险精神的机构,它一直在致力于开发先进的军事技术以应对国家安全挑战。从深海计划到黑暗计划,再到开发TCP/IP协议,DARPA一直在推动技术的边界以提供更强大的军事优势。

IP地址是TCP/IP协议的一部分,用于标识互联网设备,并确保数据在网络中的正确传输,假如咱们在Web浏览器中输入一个URL,例如[)。](。)

* 服务器接收到请求后,会返回一个HTTP响应,包含状态码200(表示成功)、响应头(包含一些元数据)以及响应体(index.html的内容)。

* 咱们的浏览器接收到响应后,会解析响应体中的HTML代码,当咱们在浏览器中输入一个网站的URL时,你的请求会发送到互联网上。咱们的请求会经过一系列的路由器和交换机,直到到达负责处理该网站的服务器。在这个过程中,每个设备(包括路由器和交换机)都会记录下你的原始IP地址,以及你请求的网站URL。

由于IP地址是由互联网服务提供商(ISP)分配的,每个ISP都有自己的一组IP地址。这些IP地址通常与地理位置有关。通过查询IP地址与ISP的对应关系,可以大致确定用户的地理位置。

网站和服务使用IP地址追踪技术来收集用户的行为信息。这些信息可以包括用户访问的网站、访问的时间、访问的频率等。这些信息可以用于广告和其他目的,以提供个性化的内容和推荐。

同时,许多浏览器和应用程序也提供了内置的追踪和个性化功能。这些功能通常通过使用cookies、本地存储和类似的技术来实现。

这些技术可以跟踪用户的浏览行为、搜索历史、在线购物和社交媒体活动等信息,浏览器(如Chrome、Firefox、Safari等)都有内置的追踪和个性化功能。当咱们在浏览器中访问网站时,浏览器会记录下咱们访问的网站、搜索历史、在线购物等信息。这些信息可能会被用于广告和其他目的,以提供个性化的内容和推荐。

许多应用程序(如电商应用、社交媒体应用等)也提供了内置的追踪功能。当你在应用程序中进行搜索、浏览商品、发布内容等操作时,应用程序会记录下你的行为信息。这些信息可能会被用于广告和其他目的,以提供个性化的内容和推荐。

通过分析收集到的用户行为信息,可以得出用户的兴趣和偏好。基于这些信息,可以向用户提供个性化的内容和推荐。例如,如果一个用户经常在电商应用中浏览电子产品,那么该应用可能会向该用户推荐相关的电子产品或促销活动。

虽然这些追踪和个性化功能可以提高用户体验,但它们也引发了隐私和安全问题。许多用户对他们的在线行为被跟踪和利用感到不安。因此,许多浏览器和应用程序提供了隐私设置和选项,让用户可以控制自己的信息如何被收集和使用。

总的来说,使用互联网协议地址(IP地址)技术和浏览器/应用程序的内置功能是两种常见的方式来识别网络用户的行为。这些技术为提供个性化的内容和推荐提供了便利,但同时也引发了隐私和安全问题。在使用这些技术时,我们需要权衡利弊并遵守相关的法律法规和道德规范。


文章标签:

本文链接:『转载请注明出处』