互联网架构与通信机制:从边缘到核心的深度解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: 互联网架构与通信机制:从边缘到核心的深度解析

互联网的组成

互联网的边缘部分

从互联网的工作方式上看,可以划分为两大块:

(1)边缘部分:

自由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。

(2)核心部分:

由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。

处在互联网边缘的部分就是连接在互联网上的所有的主机。这些主机又称为端系统(endsystem).

端系统在功能上可能有很大的差别

  • 小的端系统可以是一台普通个人电脑,具有上网功能的智能手机,甚至是一个很小的网络摄像头。
  • 大的端系统则可以是一台非常昂贵的大型计算机。
  • 端系统的拥有者可以是个人,也可以是单位(如学校、企业、政府机关等),当然也可以是某个ISP。

端系统之间通信的含义

“主机 A 和主机 B 进行通信”实际上是指:“运行在主机 A 上的某个程序和运行在主机 B 上的另一个程序进行通信。

”即“主机 A 的某个进程和主机 B 上的另个进程进行通信”简称为“计算机之间通信”


端系统之间的两种通信方式

端系统之间的通信方式通常可划分为两大类:

客户/服务器方式(C/S 方式)

即 Client/Server方式,简称为 CS 方式。


对等方式(P2P 方式)

即 Peer-to-Peer方式,简称为P2P方式。

1.客户/服务器方式

客户(client)服务器都是指通信(server)中所涉及的两个应用进程

客户囗服务器方式所描述的是进程之间服务和被服务的关系。

客户是服务的请求方,服务器是服务的提供方

服务请求方和服务提供方都要使用网络核心部分所提供的服务。


2.对等连接方式

对等连接(peer-to-peer,简写为P2P)是指两个主机在通信时并不区分哪一个是服务请求方还是服务提供方。

只要两个主机都运行了对等连接软件(P2P软件),它们就可以进行平等的、对等连接通信

双方都可以下载对方已经存储在硬盘中的共享文档。


互联网的核心部分

网络核心部分是互联网中最复杂的部分。

网络中的核心部分要向网络边缘中的大量主机提供连通性,使边缘部分中的任何一个主机都能够向其他主机通信(即传送或接收各种形式的数据)。

在网络核心部分起特殊作用的是路由器(router)。

路由器是实现分组交换(packet switching)的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。

为了理解分组交换,首先了解电路交换的基本概念。

1.电路交换的主要特点

2 部电话机只需要用 1对电线直接连接就能够互相通话。

5 部电话机两两直接相连,需 10 对电线

N 部电话机两两直接相连,需 N(N-1)/2 对电线。这种直接连接方法所需要的电线对的数量与电话机数量的平方( N )成正比。

使用交换机

当电话机的数量增多时,就要使用交换机来完成全网的交换任务。

每一部电话都直接连接到交换机上,而交换机使用交换的方法,让电话用户彼此之间可以很方便地通信所采用的交换方式就是电路交换(circuit switching)。

“交换”的含义

在这里,“交换”(switching)的含义就是转接——把一条电话线转接到另一条电话线,使它们连通起来。

从通信资源的分配角度来看,“交换”就是按照某种方式动态地分配传输线路的资源。

电路交换特点

电路交换必定是面向连接的。

电路交换分为三个阶段:

  • 建立连接:建立一条专用的物理通路,以保证双方通话时所需的通信资源在通信时不会被其他用户占用;
  • 通信:主叫和被叫双方就能互相通电话:
  • 释放连接:释放刚才使用的这条专用的物理通路(释放刚才占用的所有通信资源)。
电路交换举例

A 和 B 通话经过四个交换机

通话在A到B的连接上进行


电路交换缺点

计算机数据具有突发性。

这导致在传送计算机数据时,通信线路的利用率很低(用来传送数据的时间往往不到10%甚至1%)。


2.分组交换的主要特点

分组交换则采用存储转发技术。

在发送端,先把较长的报文划分成较短的、固定长度的数据段。


添加首部构成分组

每一个数据段前面添加上首部构成分组(packet)。


分组交换的传输单元

分组交换网以“分组”作为数据传输单元。

依次把各分组发送到接收端(假定接收端在左边)。


分组首部的重要性

每一个分组的首部都含有地址(诸如目的地址和源地址)等控制信息。

分组交换网中的结点交换机根据收到的分组首部中的地址信息,把分组转发到下一个结点交换机。

每个分组在互联网中独立地选择传输路径。

用这样的存储转发方式,最后分组就能到达最终目的地。


收到分组后剥去首部

接收端收到分组后剥去首部还原成报文。


最后还原成原来的报文

最后,在接收端把收到的数据恢复成为原来的报文。

这里我们假定分组在传输过程中没有出现差错,在转发时也没有被丢弃。


互联网的核心部分

互联网的核心部分是由许多网络和把它们互连起来的路由器组成,而主机处在互联网的边缘部分。

互联网核心部分中的路由器之间一般都用高速链路相连接,而在网络边缘的主机接入到核心部分则通常以相对较低速率的链路相连接。

主机的用途是为用户进行信息处理的,并且可以和其他主机通过网络交换信息。路由器的用途则是用来转发分组的,即进行分组交换的。


分组交换网的示意图

注意分组的存储转发过程

路由器

在路由器中的输入和输出端口之间没有直接连线。

路由器处理分组的过程是:

  • 把收到的分组先放入缓存(暂时存储);
  • 查找转发表,找出到某个目的地址应从哪个端口转发;
  • 把分组送到适当的端口转发出去。

主机和路由器的作用不同

  • 主机是为用户进行信息处理的,并向网络发送分组,从网络接收分组。
  • 路由器对分组进行存储转发,最后把分组交付目的主机。

分组交换的优点

高效:

在分组传输的过程中动态分配传输带宽,对通高效信链路是逐段占用。

灵活:

为每一个分组独立地选择最合适的转发路由。

迅速:

以分组作为传送单位,可以不先建立连接就能迅速向其他主机发送分组。

可靠:

保证可靠性的网络协议;分布式多路由的分组交换网,使网络有很好的生存性。


分组交换带来的问题

分组在各结点存储转发时需要排队这就会造成一定的时延(延迟)

分组必须携带的首部(里面有必不可少的控制信息)也造成了一定的开销。


存储转发原理并非完全新的概念

在20世纪40年代,电报通信也采用了基于存储转发原理的报文交换(message switching)。

报文交换的时延较长,从几分钟到几小时不等。现在报文交换已经很少有人使用了。


三种交换的比较

若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快。

报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。

由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

目录
相关文章
|
3天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
14 2
|
8天前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
41 6
|
8天前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
24 1
|
3天前
|
SQL Java 数据库连接
Mybatis架构原理和机制,图文详解版,超详细!
MyBatis 是 Java 生态中非常著名的一款 ORM 框架,在一线互联网大厂中应用广泛,Mybatis已经成为了一个必会框架。本文详细解析了MyBatis的架构原理与机制,帮助读者全面提升对MyBatis的理解和应用能力。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
Mybatis架构原理和机制,图文详解版,超详细!
|
5天前
|
存储 消息中间件 算法
深入探索操作系统的心脏——内核机制解析
本文旨在揭示操作系统核心——内核的工作原理,通过剖析其关键组件与机制,为读者提供一个清晰的内核结构图景。不同于常规摘要的概述性内容,本文摘要将直接聚焦于内核的核心概念、主要功能以及其在系统管理中扮演的角色,旨在激发读者对操作系统深层次运作原理的兴趣与理解。
|
8天前
|
Kubernetes Cloud Native 云计算
云原生技术深度解析:重塑企业IT架构的未来####
本文深入探讨了云原生技术的核心理念、关键技术组件及其对企业IT架构转型的深远影响。通过剖析Kubernetes、微服务、容器化等核心技术,本文揭示了云原生如何提升应用的灵活性、可扩展性和可维护性,助力企业在数字化转型中保持领先地位。 ####
|
9天前
|
运维 Kubernetes Cloud Native
Kubernetes云原生架构深度解析与实践指南####
本文深入探讨了Kubernetes作为领先的云原生应用编排平台,其设计理念、核心组件及高级特性。通过剖析Kubernetes的工作原理,结合具体案例分析,为读者呈现如何在实际项目中高效部署、管理和扩展容器化应用的策略与技巧。文章还涵盖了服务发现、负载均衡、配置管理、自动化伸缩等关键议题,旨在帮助开发者和运维人员掌握利用Kubernetes构建健壮、可伸缩的云原生生态系统的能力。 ####
|
13天前
|
机器学习/深度学习 人工智能 自然语言处理
医疗行业的语音识别技术解析:AI多模态能力平台的应用与架构
AI多模态能力平台通过语音识别技术,实现实时转录医患对话,自动生成结构化数据,提高医疗效率。平台具备强大的环境降噪、语音分离及自然语言处理能力,支持与医院系统无缝集成,广泛应用于门诊记录、多学科会诊和急诊场景,显著提升工作效率和数据准确性。
|
17天前
|
消息中间件 编解码 开发者
深入解析 Flutter兼容鸿蒙next全体生态的横竖屏适配与多屏协作兼容架构
本文深入探讨了 Flutter 在屏幕适配、横竖屏切换及多屏协作方面的兼容架构。介绍了 Flutter 的响应式布局、逻辑像素、方向感知、LayoutBuilder 等工具,以及如何通过 StreamBuilder 和 Provider 实现多屏数据同步。结合实际应用场景,如移动办公和教育应用,展示了 Flutter 的强大功能和灵活性。
86 6
|
1月前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
66 0

推荐镜像

更多