你说你懂互联网,那这些你知道么?(一)

简介: 今天的因特网无疑是有史以来由人类创造的、精心设计的最大系统、该系统由数以千计的计算机设备(计算机、平板电脑、智能手机)彼此相互连接构成,并且还有一批与因特网相互连接的物品比如游戏机、监控系统、汽车、医疗设备、智能眼镜、手表、运动手环等,随着5G时代的到来,万物互联也越来越称为可能,这里推荐一下 尤瓦尔·赫拉利 的《未来简史》,这个人的格局很高,他书中描述的未来也越来越成为现实,他写的文字能让你感觉到你更想变为计算机世界里的一片硅片。

今天的因特网无疑是有史以来由人类创造的、精心设计的最大系统、该系统由数以千计的计算机设备(计算机、平板电脑、智能手机)彼此相互连接构成,并且还有一批与因特网相互连接的物品比如游戏机、监控系统、汽车、医疗设备、智能眼镜、手表、运动手环等,随着5G时代的到来,万物互联也越来越称为可能,这里推荐一下 尤瓦尔·赫拉利 的《未来简史》,这个人的格局很高,他书中描述的未来也越来越成为现实,他写的文字能让你感觉到你更想变为计算机世界里的一片硅片。

但是,面对互联网如此巨大且迅速的变化,我们能做些什么?我在地铁站等车的时候经常被地铁广告洗脑,鼓吹人工智能发展的多么牛逼,鼓吹大家都成为人工智能的高端型人才,我不能否认这个操作,但是我认为人工智能并不适合每个人,而且人工智能需要的技术和知识储备是巨大的,所以,与其憧憬成为人工智能的高端型人才,不如把眼下的计算机基础知识学好,你的未来才会有更多的可能性。毕竟,一切计算力发展的源头都是计算机,也可以说现在互联网一切的衍生物都是计算机的儿子。

说到计算机基础,就不得不提计算机网络,就像人长大后是需要和外界进行交流一样,计算机网络也是计算机彼此通信的必要条件。如果计算机的创造好比新中国成立,那么计算机网络的出现就相当于是改革开放。并且计算机网络是每个软件工程师必须要学好的一门知识。扯了这么多,下面开始进入正题,一展计算机网络的宏图。

什么是因特网

首先来聊一下因特网是什么,wiki 对它的定义是:因特网是一个全球范围的互联网系统,它使用 TCP/IP 协议簇来链接全世界的设备。我们可以从两个方面来描述一下因特网

  • 我们描述因特网可以通过基本硬件和软件组件来进行描述
  • 我们能够根据为分布式应用提供服务的联网基础设施来描述因特网

我们先从第一条描述开始

因特网的描述

通过硬件和软件来描述

因特网是一个世界范围的计算机网络。说到因特网的构成,就不得不提构成因特网的组件是什么,还记得我们开头提到的因特网设备吗?智能手机、平板电脑,智能电视,智能家居,游戏机,手表,汽车,眼镜,温度调节系统,这些构件在因特网中有个专门的术语,所有的这些设备都被称为主机(host)或者端系统(end system),一提到主机你是不是想到的是计算机的主机?这两个主机的领域虽然不同,但是它们的作用是相同的,都是系统的大脑。据保守性评估,2015年已经有大约50亿台设备接入了因特网。而到了2020年这个数字将会变为250亿。

23.jpg


那么这些主机或者端系统之间是如何进行通信的呢?实际上,端系统通过通信链路(communication link)分组交换机(packet switch) 连接到一起。

通信链路:指的是因特网中两个节点之间的物理通道。通信链路的传输介质有双绞线光纤微波

分组交换机:网络交换设备,它主要包括三个基本部分:交换单元、接口单元和控制单元。

不同的链路能够以不同的速率进行传输数据,称为链路的传输速率(transmission type) ,以 比特/秒(bit/s,或 bps)进行度量。当一台端系统要向另一台端系统发送数据时,发送端系统将数据分段,并为每段加上首部字节。由此形成的信息包用计算机网络的术语称为分组(packet),这个分组的概念非常重要,以后我们会经常提到。这些分组通过网络发送到目的端系统,在那里被装配成初始数据。

分组交换机从它的一条入通信链路接收到达的分组,并从它的一条出通信链路转发该分组。分组交换机的种类有很多种,最著名最常见的分组交换机就是路由器(router)链路层交换机(link-layer switch),一个分组所经历的一系列通信链路和分组交换机称为通过该网络的路径(route 或者 path)

244.jpg


上面讲述的名词肯能比较晦涩,如果你不是很理解的话,就可以把分组在交换网络中的传输比作是 运输车在高速公路上的运输,分组类似于卡车,通信链路类似于高速公路,分组交换机类似于交叉口,端系统类似于建筑物,就像卡车需要从某一建筑物的起点经过高速公路和交叉口到达另外一个建筑物的过程。就像卡车需要选取一条路进行运输一样,分组也选取计算机网络的一条路径前行。

端系统通过因特网服务提供商(Internet Service Provider,ISP) 接入因特网,包括如本地电缆或电话公司那样的住宅区 ISP、公司 ISP、大学 ISP,在机场、咖啡馆或者公共场所所提供的 WiFi 接入的 ISP,以及为智能手机或者其他设备提供移动接入的蜂窝数据。

我们国家的 ISP 主要有三大基础运营商,中国电信、中国移动和中国联通。

端系统、分组交换机和其他因特网部件都要运行一系列的 协议(protocol),这些协议控制因特网中信息的接收和发送。其中 TCPIP 协议是因特网中最重要的两个协议。IP协议定义了在路由器和端系统之间发送和接收的分组格式。因特网中的协议统称为TCP/IP,而不单单指的是TCP 和 IP 两个协议。

那么这些协议是由谁制定的呢?实际上,这些因特网协议或者称为因特网标准是由因特网工程任务组(Internet Engineering Task Force)

通过分布式应用程序来描述

上面我们描述的因特网是从硬件和软件层面进行说明的,除此之外,我们还可以通过为分布式应用提供服务的联网基础设施来描述因特网,这个概念比较抽象,我们还是举例子说明一下。除了传统应用程序就像是电子邮件和web 冲浪外,因特网应用还包括智能手机和平板应用程序,这些应用程序中又包括像是即时通讯、来自云的音乐流、电影和电视流、在线社交网络、视频会议、多人游戏和基于位置的推荐系统。因为这些应用程序涉及多个相互交换的端系统,所以这些应用被称为分布式应用程序。重要的是,因特网应用程序运行在端系统上,而不是运行在网络核心的分组交换机中。

我们来深入的探究一下,因为应用程序可能会运行在端系统上,所以你需要编写使其运行在端系统上的程序,你可能会使用 C、Java、Python 来编写。现在,因为你开发了一个分布式应用程序,这个程序运行在不同的端系统需要彼此发送消息。此时我们遇见一个核心问题,那就是一个运行在端系统的应用程序如何让其他运行在端系统的应用程序收发数据呢?

接入因特网的端系统提供了一个套接字接口(socket Interface)用于和其他端系统的应用程序收发数据。这个因特网套接字是应用程序必须要遵守的约定。

协议是什么

既然我们已经对因特网有了一点概念了,下面我们就来探讨一下因特网又一个很重要的概念那就是协议,协议就相当于是人类活动所遵守的约定。

人类活动的比喻

理解计算机网络协议最简单的方式就是把它抽象为我们的生活,因为我们人类无时无刻都在执行协议。考虑一下当你想向其他人询问当前时间的时候你会怎样做?下面是一个典型的询问方式

24.jpg


上图是一个男女双方都比较友好的对话,那么假如女方回答:"请不要烦我",或者说我不会说中文等等类似不合时宜的回答造成双方不再对话,那么此时就会造成中断。通常情况下,发问者就会放弃继续询问。那么造成上述中断的原因是什么呢?是不是男女双方没有就询问时间这个话题达成一致呢?也就是说,协议最重要的一点就是为了完成一项工作,需要两个(或多个)通信实体遵守相同的协议


网络协议

网络协议非常类似于人类协议,除了通信双方由人类变为了计算机载体,哦,协议也会不一样。以大家熟悉的一个计算机网络协议为例,考虑当你向一个 Web 服务器发送请求时(即你在 Web 浏览器中键入一个 Web 页面的 URL)所发生的情况。


25.jpg

首先,你的计算机会向 Web 服务器发送一条连接请求报文,并等待该服务器的响应,等到服务器发送响应到计算机之后,计算机会重新发送一条 GET 请求报文到服务器,最后,Web 服务器向计算机返回该 Web 页面(文件)。

根据上面两个例子你能给的出协议的定义了吗?也许下面这个定义会比较准确呢

协议(protocol)定义了在两个或多个通信实体之间交换报文的格式和顺序,以及报文发送和/或接受一条报文或其他事件所采取的动作

因特网广泛的采取了各种各样的协议,不同的协议用于完成不同的通信任务。掌握计算机网络领域知识的过程就是理解网络协议的构成、原理和工作方式的过程。


            </div>
目录
相关文章
|
7月前
|
传感器 安全 物联网
《分布式软总线:解锁未来柔性电子设备互联新境界》
柔性电子设备正以前所未有的速度融入生活,从可折叠手机到智能穿戴设备,其轻薄便携、可变形特性为人们带来全新体验。然而,设备间互联互通的需求日益迫切,分布式软总线技术应运而生。该技术融合Wi-Fi、蓝牙、NFC等优势,实现设备自发现与自组网,屏蔽通信协议差异,优化数据传输效率。它在智能家居、智能医疗及可穿戴设备领域展现出巨大潜力,助力设备协同工作,提升用户体验。尽管面临兼容性与安全性挑战,未来结合AI、区块链等技术,分布式软总线将推动柔性电子设备进入更智能化、安全化的全新时代。
287 3
|
7月前
|
人工智能 监控 安全
从 DeepSeek 敏感信息泄露谈可观测系统的数据安全预防
探讨了 SLS 中增强数据安全的几种方式:权限精细化管控有效减少了潜在安全风险;接入层脱敏技术阻止敏感数据落库,提升了隐私保护;StoreView 字段集控制通过限制查询数据范围,降低数据泄露损害。智能监控系统提供实时监测,快速识别并阻断异常拖库行为,为企业提供了迅速响应和抵御威胁的能力。
|
11月前
|
运维 Kubernetes 调度
阿里云容器服务 ACK One 分布式云容器企业落地实践
阿里云容器服务ACK提供强大的产品能力,支持弹性、调度、可观测、成本治理和安全合规。针对拥有IDC或三方资源的企业,ACK One分布式云容器平台能够有效解决资源管理、多云多集群管理及边缘计算等挑战,实现云上云下统一管理,提升业务效率与稳定性。
|
人工智能 搜索推荐 语音技术
青否AI数字人抖音稳定开播,数字人带货优势及注意事项!
AI数字人直播带货革新电商领域,虚拟形象外形逼真且互动流畅,改变购物体验。青否数字人采用【实时改写实时生成】确保内容不重复,并通过AI智能回复即时解答用户问题,解决非实时内容及低频互动违规。数字人技术具24/7工作能力和个性化互动优势,降低成本提高效率。青否数字人直播解决方案实现降本增效,助力商家全天候直播带货,提升销售额。
青否AI数字人抖音稳定开播,数字人带货优势及注意事项!
|
机器学习/深度学习 人工智能 自然语言处理
6.1 自然语言处理综述
这篇文章综述了自然语言处理(NLP)的发展历程、主要挑战、常见任务,并探讨了如何利用深度学习和飞桨框架来解决NLP任务,同时提出了对NLP未来应用的思考。
|
消息中间件 缓存 监控
中间件服务层
【6月更文挑战第13天】
227 2
|
SQL 关系型数据库 MySQL
Hive 表注释乱码解决
Hive元数据在MySQL默认使用`latin1`字符集导致注释乱码。可通过修改MySQL配置文件`/etc/my.cnf`,在`[mysqld]`和末尾添加`character-set-server=utf8`等设置,重启MySQL。然后在Hive数据库中调整表字段、分区字段、索引注释的字符集。注意,这仅对新表生效。测试创建带注释的Hive表,问题解决。
475 0
|
机器学习/深度学习 传感器 人工智能
基于人工智能的自适应交通流量控制系统
【2月更文挑战第30天】 在现代城市管理中,交通拥堵一直是影响居民生活质量和城市可持续发展的关键问题。本文提出了一个基于人工智能技术的自适应交通流量控制系统,旨在通过实时数据分析、模式识别和预测算法来优化交通信号灯调度,减少交通延误,提高道路使用效率。系统采用多层神经网络与深度学习技术进行交通流状态的特征提取和趋势预测,同时结合边缘计算提升响应速度,确保了控制的实时性和准确性。本研究的创新点在于将传统的交通工程方法与最新的AI技术相结合,实现了一个具有自我学习和适应能力的智能交通管理系统。