计算机网络扫盲(1)——因特网

一、概述

        因特网是一个世界范围的计算机网络,即它是一个互联了遍及全世界数十亿计算设备的网络。大家对此应该并不陌生,我们身边有着不计其数的计算机设备被接入了因特网,如今计算机网络这个术语似乎已经有点过时了,用因特网的术语来说,所有的这些接入因特网的设备我们可以称之为主机(host)或者端系统(end system)。

        端系统通过通信链路(communication link)分组交换机(packet switch)连接到一起。当一台端系统要向另一台端系统发送数据的时候,发送端系统将数据分段,并为每段加上首部字节。由此形成的信息包用计算机网络的术语来说称为分组(packet)

        分组交换机从它的一条通信链路接收达到的分组,并从它的一条出通信链路转发该分组。市面上流行着各种类型、各具特色的分组交换机,但在当今的因特网中,两种最著名的类型是路由器(router)和链路层交换机(link-layer switch)。这两种类型的交换机朝着最终目的地转发分组。链路层交换机通常用于接入网中,而路由器通常用于网路核心中。从发送端系统到接收端系统,一个分组所经历的一系列通信链路和分组交换机称为通过该网络的路径(route 或 path)

        端系统通过因特网服务提供商(Internet Service Provider,ISP)接入因特网,包括有住宅区ISP、公司ISP、大学ISP,在公共场所提供WiFi接入的ISP,以及为智能手机等设备提供移动接入的蜂窝数据ISP。每个 ISP 自身就是一个由多台分组交换机和多段通信链路组成的网络。各ISP为端系统提供了各种不同类型的网络接入,包括如线缆调制解调器或 DSL那样的住宅宽带接入、高速局域网接入和移动无线接入。ISP也为内容提供者提供因特网接入服务,将Web站点和视频服务器直接连入因特网。因特网就是将端系统彼此互联,因此为端系统提供接入的ISP也必须互联。较低层的 ISP 通过国家的、国际的较高层 ISP互联起来。较高层ISP是由通过高速光纤链路互联的高速路由器组成的。无论是较高层还是较低层ISP网络,它们每个都是独立管理的,运行着IP协议,遵从一定的命名和地址规则。
        端系统、分组交换机和其他因特网部件都要运行一系列协议(protocol),这些协议控制因特网中信息的接收和发送。TCP (Transmission Control Protocol,传输控制协议)IP (Internet Protocol,网际协议)是因特网中两个最为重要的协议。IP协议定义了在路由器和端系统之间发送和接收的分组格式。因特网的主要协议统称为TCP/IP。
        鉴于因特网协议的重要性,每个人就各个协议及其作用取得一致认识是很重要的,这样人们就能够创造协同工作的系统和产品。这正是标准发挥作用的地方。因特网标准(Internet standard)由因特网工程任务组(Internet Engineering Task Force, IETF) [IETF 2016] 研发。IETF 的标准文档称为请求评论(Request For Comment, RFC)。RFC最初只是普通的请求评论(因此而得名),目的是解决因特网先驱者们面临的网络和协议问题[ Allma 2011]。RFC文档往往是技术性很强并相当详细的。它们定义了 TCP、IP、HTTP (用于 Web)和 SMTP(用于电子邮件)等协议。目前已经有将近 7000 个 RFC。其他组织也在制定用于网络组件的标准,最引人注目的是针对网络链路的标准。例如,IEEE 802LAN/MAN标准化委员会[IEEE 802 2016]制定了以太网和无线 WiFi 的标准。

二、服务描述

        前面的讨论已经辨识了构成因特网的许多部件。但是我们也能从一个完全不同的角度,即从为应用程序提供服务的基础设施的角度来描述因特网。除了诸如电子邮件和 Web 冲浪等传统应用外,因特网应用还包括移动智能手机和平板电脑应用程序,其中包括即时讯息、与实时道路流量信息的映射、来自云的音乐流、电影和电视流、在线社交网络、视频会议、多人游戏以及基于位置的推荐系统。因为这些应用程序涉及多个相互交换数据的端系统,故它们被称为分布式应用程序(distributed application)。重要的是,因特网应用程序运行在端系统上,即它们并不运行在网络核心中的分组交换机中。尽管分组交换机能够加速端系统之间的数据交换,但它们并不在意作为数据的源或宿的应用程序。
        我们稍深入地探讨一下为应用程序提供服务的基础设施的含义。为此,假定你对某种分布式因特网应用有一个激动人心的新想法,它可能大大地造福于人类,或者它可能直接使你名利双收。你将如何把这种想法转换成一种实际的因特网应用呢?因为应用程序运行在端系统上,所以你需要编写运行在端系统上的一些软件。例如,你可能用Java、C或python编写软件。此时,因为你在研发一种分布式因特网应用程序,运行在不同端系统上的软件将需要互相发送数据。此时我们碰到一个核心问题,这个问题导致了另一种描述因特网的方法,即将因特网描述为应用程序的平台。运行在一个端系统上的应用程序怎样才能指令因特网向运行在另一个端系统上的软件发送数据呢?
        与因特网相连的端系统提供了一个套接字接口(socket interface),该接口规定了运行在一个端系统上的程序请求因特网基础设施向运行在另一个端系统上的特定目的地程序交付数据的方式。因特网套接字接口是一套发送程序必须遵循的规则集合,因此因特网能够将数据交付给目的地。我们做一个简单的类比,假定Alice使用邮政服务向Bob发一封信。当然,Alice不能只是写了这封信(相关数据)然后把该信丢出窗外。相反,邮政服务要求alice将信放入一个信封中;在信封的中间写上Bob的全名、地址和邮政编码;封上信封;在信封的右上角贴上邮票;最后将该信封丢进一个邮局的邮政服务信箱中。因此,该邮政服务有自己的"邮政服务接口"或一套规则,这是Alice必须遵循的,这样邮政服务才能将她的信件交付给Bob。同理,因特网也有一个发送数据的程序必须遵循的套接字接口,使因特网向接收数据的程序交付数据。
        当然,邮政服务向顾客提供了多种服务,如特快专递、挂号、普通服务等。同样,因特网向应用程序提供了多种服务。当你研发一种因特网应用程序时,也必须为你的应用程序选择其中的一种因特网服务。

三、小结

        本文主体内容来自于《计算机网络 自顶向下方法》[美]James F.Kurose  Keith W.Ross。一本很好的书,笔者根据自己的需求和判断进行了一定部分的删减形成了本文,如果你时间充足,推荐阅读原书,本系列旨在快速了解和熟悉一些基本概念。

        文中对重要的术语进行了加粗,其实本文的目的也就是让我们了解这些基本概念,这里最后进行一个简单的回顾。

1、主机(host)/ 端系统(end system)

        同一个概念,指的是接入因特网的设备,例如个人pc,智能手机,平板电脑等一切可以上网的设备。

2、通信链路(communication link)

        通信传输的介质,由不同类型的物理媒体组成。

        关于这部分的详细内容,在下文中有详细介绍:

计算机网络扫盲(2)——网络边缘icon-default.png?t=N7T8https://blog.csdn.net/apple_53311083/article/details/134757655?spm=1001.2014.3001.5502

3、分组交换机(packet switch)

        分组交换机从它的一条通信链路接收达到的分组,并从它的一条出通信链路转发该分组。可以分成路由器(router)和链路层交换机(link-layer switch)

4、分组(packet)

        当一台端系统要向另一台端系统发送数据的时候,发送端系统将数据分段,并为每段加上首部字节。这就构成了一个分组。 

5、路径(route 或 path)

        从发送端系统到接收端系统,一个分组所经历的一系列通信链路和分组交换机称为通过该网络的路径(route 或 path)。

6、因特网服务提供商(Internet Service Provider,ISP)

      端系统通过因特网服务提供商(Internet Service Provider,ISP)接入因特网  

7、协议(protocol)

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

8、 因特网标准(Internet standard)

        世界上网络设备不计其数,遵循同一套协议非常的重要,因此就有了因特网标准。因特网标准(Internet standard)由因特网工程任务组(IETF)研发。IETF 的标准文档称为请求评论(Request For Comment, RFC)

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

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

相关文章

【【水 MicroBlaze 最后的介绍和使用】】

水 MicroBlaze 最后的介绍和使用 我对MicroBlaze 已经有了一个普遍的理解 了 现在我将看的两个 一个是 AXI4接口的 DDR读写实验 还有一个是 AXI DMA 环路实验 虽然是 水文 但是 也许能从中 得到一些收获 第一个是 AXI DDR 读写实验 Xilinx 从 Spartan-6 和 Virtex-6 系列开始…

SSM SpringBoot vue社团事务管理系统

SSM SpringBoot vue社团事务管理系统 系统功能 登录 个人中心 人员信息管理 考勤信息管理 空闲时间管理 现金日记账管理 经费预算管理 物品租借管理 会议信息管理 活动信息管理 项目任务管理 公告通知管理 物资信息管理 开发环境和技术 开发语言:Java 使用框架:…

V8引擎类型转换(VIP课程)

这一章是源于一道面试题 完成以下条件并且输出console if(a 1 && a 2 && a 3) {console.log(true) }好家伙 乍一看一个变量怎么可能等于三个值?带着疑问我们去深入了解 类型系统 在JavaScript中类型系统不同于别的语言,例如JavaSc…

深度学习 -- 卷积神经网络

1、卷积神经网络的结构 大卫休伯尔( David Hunter Hubel ) 等人研究发现,猫的视皮层上 存在简单细胞( simple cell )和复杂细胞( complex cell ),简单细胞会对 感受野中特定朝向的线段做出反应,而复杂细胞对于特定朝向的钱段移动也能做出反应…

使用Docker Compose搭建CIG监控平台

CIG简介 CIG监控平台是基于CAdvisor、InfluxDB和Granfana构建的一个容器重量级监控系统,用于监控容器的各项性能指标。其中,CAdvisor是一个容器资源监控工具,用于监控容器的内存、CPU、网络IO和磁盘IO等。InfluxDB是一个开源的分布式时序、时…

机器学习-回归问题(Regression)

前言 与KNN分类任务预测的输出为离散型不同. 在机器学习中,回归任务是用于预测连续数值型变量的任务。回归任务在很多领域都有着广泛的应用. 回归问题求解 在一个回归问题中,很显然模型选择和好坏会直接关系到将来预测结果的接近程度,举个…

【高效开发工具系列】jackson入门使用

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

使用VC++设计程序实现K近邻中值滤波器(KNNMF)、最小均方差滤波器、矢量中值滤波算法进行滤波

VC实现若干种图像滤波技术2 获取源工程可访问gitee可在此工程的基础上进行学习。 该工程的其他文章: 01- 一元熵值、二维熵值 02- 图像平移变换,图像缩放、图像裁剪、图像对角线镜像以及图像的旋转 03-邻域平均平滑算法、中值滤波算法、K近邻均值滤波器 …

瑞云科技参与《数字孪生世界白皮书》编写,实时云渲染助力数字孪生

为了促进数字孪生技术的发展和应用,易知微与数字孪生世界企业联盟联合众多行业专家以及多家业内企业共同编写了《数字孪生世界白皮书(2023)》。该白皮书从数字孪生的综述、应用架构、核心技术、新型技术成果和重点行业应用等方面,…

图论|并查集理论基础 1971. 寻找图中是否存在路径

什么是并查集 并查集是一种数据结构,用于处理一些不交集的合并及查询问题。它支持两种操作: 查找(Find):确定某个元素属于哪个子集。它可以用来判断两个元素是否属于同一个子集。 合并(Union)&…

WebGL笔记:矩阵旋转运算的原理和实现

矩阵 矩阵(Matrix)是一个按照矩形纵横排列的复数集合 矩阵就像一个矩形的阵盘,通过其中纵横排列的元素我们可以摆出不同功能的阵法,比如位移矩阵、旋转矩阵、缩放矩阵 …在矩阵中的每一行,或者每一列数字构成的集合&a…

Flutter开发type ‘Future<int>‘ is not a subtype of type ‘int‘ in type cast错误

文章目录 问题描述错误源码 问题分析解决方法修改后的代码 问题描述 今天有个同事调试flutter程序时报错,问我怎么解决,程序运行时报如下错误: type ‘Future’ is not a subtype of type ‘int’ in type cast 错误源码 int order Databas…

2015年五一杯数学建模C题生态文明建设评价问题解题全过程文档及程序

2015年五一杯数学建模 C题 生态文明建设评价问题 原题再现 随着我国经济的迅速发展,生态文明越来越重要,生态文明建设被提到了一个前所未有的高度。党的十八大报告明确提出要大力推进生态文明建设,报告指出“建设生态文明,是关系…

探索意义的深度:自然语言处理中的语义相似性

一、说明 语义相似度,反应出计算机对相同内容,不同表达的识别能力。因而识别范围至少是个句子,最大范围就是文章,其研究方法有所区别。本文将按照目前高手的研究成绩,作为谈资介绍给诸位。 二、语义相似度简介 自然语言…

团队怎么高效制作问卷?

制作调查问卷时并不是一个人就能单独完成,通常情况下,完成一份调查问卷往往需要一个团队的成员参与,相互协作,共同完成。不过,多人协作经常会遇到协作壁垒,导致效率低下,那团队怎么才能高效协作…

【面试经典150 | 二分查找】搜索二维矩阵

文章目录 写在前面Tag题目来源题目解读解题思路方法一:二分查找 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法,两到三天更新一篇文章,欢迎催更…… 专栏内容以分析题目为主,并附带一些对于本题涉及到的数据结构等…

前端笔记(二):CSS 选择器与特性

CSS(层叠样式表)是一种样式表语言,用于描述HTML或XML文档的呈现方式。它定义了如何在屏幕、纸张或其他媒体上显示文档的样式、布局和外观。 里面的代码由 选择器 { } 组成 体验 CSS CSS 可以让我们界面变得更加美观,这是 CSS 的…

OpenSSH 漏洞修复升级最新版本

Centos7系统ssh默认版本一般是OpenSSH7.4左右,低版本是有漏洞的而且是高危漏洞,在软件交付和安全扫描上是过不了关的,一般情况需要升级OpenSSH的最新版本 今天详细说下升级最新版本的处理过程(认真看会发现操作很简单&#xff0c…

k8s-daemonset、job、cronjob控制器 6

Daemonset控制器(一个节点部署一个) 、 创建Daemonset控制器 控制节点上不能进行部署,有污点 解决方式: 扩容节点,token值过期的解决方法: 回收pod job控制器 需要使用perl镜像,仓库没有&…

基于Springboot + vue的汽车资讯网站

qq(2829419543)获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:springboot 前端:采用vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件&#xf…