计算机网络基础:从IP地址到分层模型

计算机网络

1.计算机网络概述

概述

​ 计算机网络是指两台或更多的计算机组成的网络,在同一个网络中,任意两台计算机都可以直接通信。互联网是网络的网络(Internet),即把很多计算机网络连接起来,形成一个全球统一的互联网,互联网中的所有计算机都需要遵循同一种网络协议。

网络协议:为进行网络中的计算机之间的连接,以及数据交换而设计的准则与规范。

network-of-networks.gif

​ 对某个特定的计算机网络来说,它可能使用网络协议ABC,而另一个计算机网络可能使用网络协议XYZ。如果计算机网络各自的通讯协议不统一,就没法把不同的网络连接起来形成互联网。因此,为了把计算机网络接入互联网,就必须使用TCP/IP协议。
​ TCP/IP协议泛指互联网协议,其中最重要的两个协议是TCP协议和IP协议。只有使用TCP/IP协议的计算机才能够联入互联网,使用其他网络协议(例如NetBIOS、AppleTalk协议等)是无法联入互联网的。

IP地址

​ 在互联网中,一个IP地址用于唯一标识一个网络接口(Network Interface)。一台联入互联网的计算机肯定有一个IP地址,但也可能有多个IP地址。
​ IP地址分为IPv4和IPv6两种。IPv4采用32位地址,类似101.202.99.12,而IPv6采用128位地址,类似2001:0DA8:100A:0000:0000:1020:F2F3:1428。IPv4地址总共有232个(大约42亿),而IPv6地址则总共有2128个(大约340万亿亿亿亿),IPv4的地址目前已耗尽,而IPv6的地址是根本用不完的。
​ IP地址又分为公网IP地址和内网IP地址。公网IP地址可以直接被访问,内网IP地址只能在内网访问。内网IP地址类似于:
​ ○192.168.x.x
​ ○10.x.x.x
​ 有一个特殊的IP地址,称之为本机地址,它总是127.0.0.1。

域名

  • 因为直接记忆IP地址非常困难,所以我们通常使用域名访问某个特定的服务。域名解析服务器DNS负责把域名翻译成对应的IP,客户端再根据IP地址访问服务器。
  • 用nslookup可以查看域名对应的IP地址:
C:\Users\apple>nslookup www.taobao.com
Server:  UnKnown
Address:  192.168.1.1
Non-authoritative answer:
Name:    www.taobao.com.danuoyi.tbcache.com
Addresses:  240e:bf:c800:2912:3::3f9
          240e:bf:c800:2912:3::3fa
          123.53.182.232
          123.53.182.233
Aliases:  www.taobao.com
  • 有一个特殊的本机域名localhost,它对应的IP地址总是本机地址127.0.0.1。

主机之间的通信方式

计算机通信是计算机中进程(即运行中的程序)之间的通信。计算机网络采用的通信方式是客户-服务器方式(C/S方式)和对等连接方式(P2P 方式)。
●客户-服务器(C/S):客户是服务的请求方,服务器是服务的提供方。
在这里插入图片描述
●对等(P2P):不区分客户和服务器
在这里插入图片描述

网络分层模型

为什么网络要分层?

主要有 3 方面的原因:

  1. 各层之间相互独立:各层之间相互独立,各层之间不需要关心其他层是如何实现的,只需要知道自己如何调用下层提供好的功能就可以了(可以简单理解为接口调用)。这个和我们对开发时系统进行分层是一个道理。
  2. 提高了整体灵活性 :每一层都可以使用最适合的技术来实现,你只需要保证你提供的功能以及暴露的接口的规则没有改变就行了。这个和我们平时开发系统的时候要求的高内聚、低耦合的原则也是可以对应上的。
  3. 大问题化小 :分层可以将复杂的网络间题分解为许多比较小的、界线比较清晰简单的小问题来处理和解决。这样使得复杂的计算机网络系统变得易于设计,实现和标准化。 这个和我们平时开发的时候,一般会将系统功能分解,然后将复杂的问题分解为容易理解的更小的问题是相对应的,这些较小的问题具有更好的边界(目标和接口)定义。

OSI七层模型

​ 计算机世界非常非常有名的一句话:计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决,计算机整个体系从上到下都是按照严格的层次结构设计的。

​ 计算机网络从底层的传输到高层的软件设计十分复杂,要合理地设计计算机网络模型,必须采用分层模型,每一层负责处理自己的操作。在这个模型中,每个分层都接收由它的下一层所提供的特定服务,并且负责为自己的上一层提供特定的服务。上下层之间进行交互时所遵循的的约定叫做“接口”。同一层之间的交互所遵循的约定叫做“协议”。

​ OSI(Open System Interconnect)网络7层模型是ISO组织定义的一个计算机互联的标准分层模型,但它只是一个定义,目的是为了简化网络各层的操作,提供标准接口便于实现和维护,从上至下依次包括:应用层、表示层、会话层、传输层、网络层、链路层、物理层。

TCP-IP-4-model.6ae180f1.png

TCP/IP 四层模型

​ 互联网实际使用的TCP/IP模型是OSI七层网络模型的简化版,一共分为4层:应用层、传输层、网络层、网络接口层(数据链路层、物理层)

TCP-IP-4-model.6ae180f1.png

01 应用层

​ 应用层协议负责定义应用进程(进程:正在运行的程序)间的通信和交互的规则。对于不同的网络应用需要不同的应用层协议,应用层交互的数据单元称为报文。在应用层中常见的协议有:

  • 域名系统 DNS(DNS,Domain Name System):用于将域名解析成IP地址;
  • HTTP 协议(HTTP,HyperText Transfer Protocol):超文本传输协议,最初的目的用于发布和接受HTML网页,是目前互联网应用最广泛的网络协议;
  • 电子邮件协议:常用的电子邮件协议有SMTP、POP3、IMAP4
  • **远程登录协议:**Telnet协议是Internet远程登录服务的标准协议和主要方式,基本功能是允许用户登录进入远程主机系统;
  • 文件传输协议(File Transfer Protocol):FTP协议用于在网络上进行文件传输的一套标准协议,FTP允许用户以文件操作的方式(如文件的增、删、改、查、传送等)与另一主机相互通信;

02 传输层

​ 传输层协议负责定义两台主机进程之间的通信,提供数据传输服务,提供端到端的可靠传输,主要使用TCP协议和UDP协议;

  • TCP(Transmission Control Protocol)协议:传输控制协议,提供面向连接、可靠的数据传输服务,TCP 主要提供完整性服务。
  • UDP(User Datagram Protocol)协议:用户数据报协议,提供无连接、尽最大努力的数据传输服务(不保证数据传输的可靠性),UDP 主要提供及时性服务。

tcp&udp.png

03 网络层

​ 在计算机网络中进行通信的两个计算机之间可能会经过很多个数据链路,也可能还要经过很多通信子网。网络层的任务就是选择合适的网间路由和交换结点, 确保数据及时传送。在发送数据时,网络层把传输层产生的报文段或用户数据报封装成分组和包进行传送,网络层使用的协议是IP协议。

互联网是由大量的异构(heterogeneous)网络通过路由器(router)相互连接起来的。互联网使用的网络层协议是无连接的网际协议(Internet Protocol)和许多路由选择协议。

04 网络接口层

网络接口层包括:数据链路层物理层两部分

  • **数据链路层:**通常简称为链路层。两台主机之间的数据传输,总是在一段一段的链路上传送的,这就需要使用专门的链路层的协议。 在两个相邻节点之间传送数据时,数据链路层将网络层交下来的 IP 数据报组装成帧,在两个相邻节点间的链路上传送帧。每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错控制等)。
  • **物理层:**在物理层上所传送的数据单位是比特bit,物理层(physical layer)的作用是实现相邻计算机节点之间比特流的透明传送,屏蔽掉具体传输介质和物理设备的差异, 使其上面的数据链路层不必考虑网络的具体传输介质。物理层仅专注0、1比特流和电压高低、光的闪灭之间的互换。

网络体系结构.png

osi.png

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringCloud篇(服务提供者/消费者)(持续更新迭代)

在服务调用关系中,会有两个不同的角色: 服务提供者:一次业务中,被其它微服务调用的服务。(提供接口给其它微服务) 服务消费者:一次业务中,调用其它微服务的服务。(调用…

【UML】类图及其六种关系,超详细介绍,细节满满

目录 一、概念 推荐一个画UML相关图的软件:ProcessOn 二、快速介绍类图 1、普通类的类图 2、抽象类的类图 3、接口的类图 三、类与类之间的关系 (一)、关联关系 1、单向关联 2、双向关联 3、自关联 (二)、聚…

HTML文件中引入jQuery的库文件

方法一: 1. 首先,在官方网站(https://jquery.com/)上下载最新版本的jQuery库文件,通常是一个名为jquery-x.x.x.min.js的文件。 2. 将下载的jquery-x.x.x.min.js文件保存到你的项目目录中的一个合适的文件夹中,比如将它保存在你的项…

使用Wireshark获取USB HID(Human Interface Device)报告描述符

使用Wireshark选择需要获取的USB进行抓取数据,找到设备(host)接收信息的数据 第二栏出现hid报告,右击选择复制流 将复制的内容粘贴到USB标准请求及描述符在线分析工具 - USB中文网 进行解析 以图中获取手写板的数据为例&#xff…

ReactPress与WordPress:一场内容管理系统的较量

ReactPress Github项目地址:https://github.com/fecommunity/reactpress WordPress官网:https://wordpress.org/ ReactPress与WordPress:一场内容管理系统的较量 在当今数字化时代,内容管理系统(CMS)已成为…

DevExpress WinForms中文教程:Data Grid - 如何绑定到实体框架数据源?

在本教程中,您将学习如何将DevExpress WinForms的网格控件绑定到实体框架数据源、如何使用数据注释属性来更改网格显示和管理数据的方式,以及如何将单元格值更改发送回数据源。 P.S:DevExpress WinForms拥有180组件和UI库,能为Wi…

使用多种机器学习调参模型进行二分类建模的全流程,代做分析辅导

使用多种机器学习调参模型进行二分类建模的全流程教程 机器学习全流程分析各个模块用到的总的参数文件 0. 分析参数文件 参数文件名称:total_analysis_params_demo.xlsx ,很多分析模块都是这个总的参数文件,我的这个总的参数文件如果有更新…

材质(一)

描述: 材质蓝图,蓝图可以这么定义,是一种数据结构,是一种带有流水线的模糊的数据结构, 材质蓝图也是一种蓝图。 示例操作:

SCI论文数据可视化的在线网址

目录 SCI论文数据可视化的在线网址 EVenn(Evenn):免费 SCI论文数据可视化的在线网址 数据可视化的在线网址,以下是一些值得推荐的资源: ImageGP(ImageGP | ImageGP):该平台可以在线生成常见的线图、柱状图、散点图、箱线图、集合图、热图和直方图等。用户只需粘贴数…

电子应用产品设计方案-4:基于物联网和人工智能的温度控制器设计方案

一、概述 本温度控制器旨在提供高精度、智能化、远程可控的温度调节解决方案,适用于各种工业和民用场景。 二、系统组成 1. 传感器模块 - 采用高精度的数字式温度传感器,如 TMP117,能够提供精确到 0.01C 的温度测量。 - 配置多个传感器分布在…

5G的发展演进

5G发展的驱动力 什么是5G [远程会议,2020年7月10日] 在来自世界各地的政府主管部门、电信制造及运营企业、研究机构约200多名会议代表和专家们的共同见证下,ITU-R WP 5D#35e远程会议宣布3GPP 5G技术(含NB-IoT)满足IMT-2020 5G技…

人工智能--自然语言处理简介

上一篇:《人工智能模型训练中的数据之美——探索TFRecord》 序言:自然语言处理(NLP)是人工智能中的一种技术,专注于理解基于人类语言的内容。它包含了编程技术,用于创建可以理解语言、分类内容&#xff0c…

第8章 利用CSS制作导航菜单

8.1 水平顶部导航栏 水平莱单导航栏是网站设计中应用范围最广的导航设计,一般放置在页面的顶部。水平 导航适用性强,几乎所有类型的网站都可以使用,设计难度较低。 如果导航过于普通,无法容纳复杂的信息结构,就需要在…

企望制造ERP系统 drawGrid.action SQL注入致RCE漏洞复现

0x01 产品简介 企望制造ERP系统是一款专为制造企业设计的企业资源计划(ERP)软件,旨在优化企业的资源配置,提高运营效率,并增强企业的竞争力。系统集成了财务管理、生产管理、供应链管理、客户关系管理(CRM)、人力资源管理(HRM)等多个核心功能模块,能够全面覆盖企业的…

基于JDBC的书库系统(MySQL)

一、创建数据库中的表 1、需求 有一张表叫javabook【创建表要求使用sql语句进行】 表中列 bookid 整数自增类型 表中列 bprice 小数类型 表中列 bookname 字符串类型 长度不能小于50 工程和包要求: domain dao …

内置RTK北斗高精度定位的4G执法记录仪、国网供电服务器记录仪

内置RTK北斗高精度定位的4G执法记录仪、国网供电服务器记录仪BD311R 发布时间: 2024-10-23 11:28:42 一、 产品图片: 二、 产品特性: 4G性能:支持2K超高清图传,数据传输不掉帧,更稳定。 独立北…

腾讯音乐2024Q3财报:“稳”是核心,再进一步

11月12日,腾讯音乐娱乐集团(以下简称“腾讯音乐”)发布了截至2024年9月30日止的第三季度未经审计财务报告,各项核心财务指标均符合市场预期。本季度总收入为70.2亿元,同比增长6.8%;调整后净利润为19.4亿元&…

地宫取宝(摘花生+最长上升子序列)C++

1212. 地宫取宝 - AcWing题库 #include <iostream>using namespace std;const int N 55; const int MOD 1000000007;int w[N][N],f[N][N][13][14]; int n,m,k;int main() {cin >> n >> m >> k;for (int i 1;i < n;i) {for (int j 1;j < m;j)…

2024 年 8 个最佳 API 设计工具图文介绍

8 个最佳 API 设计工具推荐&#xff0c;包括 Apifox、Postman、Swagger、Insomnia、Stoplight、Hoppscotch、RapidAPI和Paw。 详细介绍&#xff1a;2024 年 8 个最佳 API 设计工具推荐

minio 分布式

方案设计 需要5台服务器&#xff0c;一台nginx用作分发请求&#xff0c;4台minio服务器&#xff0c;每个minio服务器上至少2个盘。在这个方法中&#xff0c;我使用了lvm的缓存&#xff0c;在同种固态盘的情况下&#xff0c;可以使读性能提高数倍到十倍&#xff0c;使写性能提高…