当前位置: 首页 > news >正文

计算机网络技术-知识篇(Day.1)

一、网络概述

1、网络的概念

两个不在同一地理位置的主机,通过传输介质和通信协议,实现通信和资源共享。

2、网络发展史

第一阶段(20世纪60年代)

  • 标志性事件:ARPANET的诞生
  • 关键技术:分组交换技术

第二阶段(20世纪70-80年代)

  • 标志性事件:NSFNet的建立
  • 关键技术:TCP/IP协议

第三阶段(20世纪90年代)

  • 标志性事件:Mosaic浏览器的问世
  • 关键技术:Web技术

3、网络的四要素

  • 传输介质:包括同轴电缆、光纤、双绞线以及无线电波等

  • 通信协议:用于设备间通信的标准协议,例如EIGRP、RIP、OSPF、IS-IS、BGP、TCP、IP、PPP等

  • 资源:涵盖各类数据形式,如图片、视频、音频等数字内容

  • 终端:常见的终端设备有智能手机、笔记本电脑、平板电脑以及台式计算机等

4、网络功能

  • 数据通信

  • 资源共享

  • 增加可靠性

  • 提高系统处理能力

5、网络类型

WAN(广域网 / 外部网络)

  • 覆盖范围:几十至几千千米

  • 主要功能:实现远距离计算机网络互联

  • 典型应用:互联网、城域网(MAN)

LAN(局域网 / 内部网络)

  • 覆盖范围:约1千米

  • 主要功能:实现短距离计算机设备互联

  • 典型应用:企业网络、校园网络

6、网络协议与标准

  • 协议

    (1)语法
    多个对象之间协商的接口规范。

    (2)语义
    定义控制信息各部分的含义,包括应发送的控制指令类型、需要执行的操作以及对应的响应方式。

    (3)同步
    以多字节或多比特数据块为传输单元,仅在帧起始位置进行同步,帧内保持固定时钟信号。

7、网络中常见概念

编号概念说明
1主机指能够连接网络的终端设备
2通信链路由物理介质(如同轴电缆、双绞线、光纤等)连接构成的传输通路
3路由器一种数据转发设备,属于交换机的一种
4分组端系统间传输数据时,将数据分片并添加首部字节形成的传输单元
5路径分组在网络中传输所经过的通信链路和交换机的序列
6因特网服务商(ISP)提供网络接入服务的运营商,如中国移动、中国联通等
7网络协议计算机网络中进行数据交换的规则和标准
8IP协议规定路由器和端系统间分组格式的网际协议
9TCP/IP协议簇以TCP/IP为核心的一系列网络协议集合
10套接字接口(socket)定义端系统间通过互联网进行数据交换的标准方式
11协议通信实体间交换报文的格式和顺序规范
12丢包网络中分组丢失的现象
13吞吐量单位时间内成功传输的数据量
14IP地址网络中唯一标识主机的地址,分为内网和公网地址
15端口号主机内用于区分不同应用程序进程的标识
16URI统一资源标识符
17URL统一资源定位符,URI的子集
18HTML超文本标记语言,用于创建网页的标准语言
19Web页面由多个对象组成的网页内容
20Web服务器为客户端提供文档和资源的服务器
21WebService跨平台远程调用技术
22CDN内容分发网络,通过边缘服务器提高内容访问效率
23WAFWeb应用防火墙,保护Web应用安全
24HTTP超文本传输协议,用于传输多媒体数据
25SMTP协议提供电子邮件服务的协议
26DNS协议将域名映射为IP地址的协议
27TELNET协议远程登录协议
28SSH协议安全的远程登录协议
29FTP协议高效的文件传输协议
30单向数据传输数据只能从发送端到接收端的传输方式
31双向数据传输全双工通信方式
32面向连接通信前需建立连接的传输方式
33三次握手TCP建立连接的过程
34四次挥手TCP断开连接的过程
35IPv4使用32位地址的网际协议第4版
36IPv6使用128位地址的网际协议第6版
37接口主机与物理链路的边界
38ARP协议通过IP地址查询MAC地址的协议
39RARP通过MAC地址查询IP地址的协议
40代理ARP跨网段转发ARP请求的解决方案
41ICMP协议互联网控制报文协议
42DHCP协议动态主机配置协议
43NAT协议网络地址转换协议
44IP隧道封装协议跨网络传输的技术
45单播点对点通信方式
46广播一对所有通信方式
47多播限定组内的一对多通信
48任播从多台主机中选择接收端
49IGP内部网关协议
50EGP外部网关协议
51MPLS标记交换技术
52MAC协议链路层数据传输规范
53以太网主流局域网技术
54VLAN虚拟局域网技术
55基站无线网络基础设施

8、网络拓扑结构

星型拓扑

优点

  • 部署简单

  • 扩展性强

  • 故障诊断便捷

缺点

  • 中心节点负荷集中

网型拓扑

  • 每个节点至少连接两个其他节点

  • 可靠性出色,但组网成本较高

二、网络模型

1、分层思想

1.1、概述

分层思想的核心理念是将复杂的系统或问题划分为多个独立的、相互关联的层级,每个层级有不同的功 能和责任。这种分层的方式可以使系统或问题更具结构化和可管理性,简化设计和实施过程,并提高系 统或问题的可扩展性和互操作性。

1.2、核心理念

  • 模块化:将系统或问题划分为多个模块或层级,每个层级负责特定的功能,模块之间相互独立但也 相互关联。这样可以降低复杂度,使系统设计更加清晰和可扩展。

  • 抽象性:每个层级都对其他层级提供特定的抽象接口,屏蔽了底层实现的复杂性,使各层级之间的 交互更加简化和统一。这样可以提高代码的可维护性和可重用性。

  • 松耦合:每个层级之间通过抽象接口进行交互,层级之间的耦合度尽可能地降低,使得各个层级可 以独立地进行修改和演变。这样可以使系统更具灵活性和可扩展性。

  • 可替换性:由于每个层级之间的耦合度较低,所以可以灵活地替换或添加新的功能层级,而不需要 对其他层级进行修改。这样可以使系统更容易适应变化的需求和技术。

2、OSI七层模型

1. 应用层(Application Layer)

  • 功能:直接为用户应用程序提供网络服务,是用户与网络的接口。

  • 核心任务:处理特定的应用需求,如文件传输、电子邮件、网页浏览等。

  • 典型协议:HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)、POP3(邮局协议版本 3)等。

2. 表示层(Presentation Layer)

  • 功能:负责数据的格式转换和表示,确保不同设备的应用层能理解对方的数据。

  • 核心任务

    • 数据编码(如 ASCII、Unicode)、格式转换(如文本、图像、音频的格式处理);

    • 数据压缩与解压、加密与解密(如 SSL/TLS 加密)。

  • 作用:屏蔽底层数据格式的差异,让应用层专注于业务逻辑。

3. 会话层(Session Layer)

  • 功能:建立、管理和终止两个应用程序之间的会话(即通信连接)。

  • 核心任务

    • 会话的创建(如验证身份、协商通信参数);

    • 会话的维护(如控制数据发送的顺序、断点续传);

    • 会话的释放(正常关闭或异常中断时的处理)。

  • 典型应用:数据库连接中的会话管理、视频会议中的连接控制。

4. 传输层(Transport Layer)

  • 功能:为上层(应用层、表示层、会话层)提供端到端的可靠数据传输服务。

  • 核心任务

    • 数据分段与重组(将大块数据分割为小数据包,接收后重组);

    • 流量控制(避免发送方速率过快导致接收方溢出);

    • 差错控制(通过校验和、重传机制确保数据准确到达);

    • 端口寻址(通过端口号识别主机上的不同应用程序,如 HTTP 用 80 端口)。

  • 典型协议

    • TCP(传输控制协议):面向连接、可靠传输(适用于文件传输、网页加载等);

    • UDP(用户数据报协议):无连接、不可靠但高效(适用于视频直播、实时游戏等)。

5. 网络层(Network Layer)

  • 功能:负责数据包从源主机到目标主机的路由选择和转发,解决不同网络之间的通信问题(即 “跨网传输”)。

  • 核心任务

    • 逻辑寻址(通过 IP 地址标识网络中的主机,如 IPv4、IPv6);

    • 路由选择(通过路由协议选择最佳路径,如 RIP、OSPF);

    • 拥塞控制(避免网络因数据过多而拥塞)。

  • 典型协议:IP(网际协议)、ICMP(互联网控制消息协议,如 ping 命令基于此)、ARP(地址解析协议,将 IP 地址转换为 MAC 地址)。

6. 数据链路层(Data Link Layer)

  • 功能:在相邻两个网络设备(如交换机与主机、路由器与交换机)之间的物理链路上传输数据帧,确保数据在物理层的可靠传输。

  • 核心任务

    • 物理寻址(通过 MAC 地址标识同一局域网内的设备);

    • 帧的封装与拆封(将网络层的数据包包装为帧,添加帧头和帧尾用于校验);

    • 差错控制(检测并纠正物理层传输的错误,如 CRC 校验);

    • 流量控制(控制相邻设备间的数据发送速率)。

  • 典型技术:以太网(Ethernet)、Wi-Fi(无线局域网)、PPP(点对点协议,用于拨号上网)。

7. 物理层(Physical Layer)

  • 功能:定义网络设备与传输介质之间的物理连接规范,负责将数据转换为电信号、光信号或无线电信号等物理形式进行传输。

  • 核心任务

    • 传输介质的规格(如双绞线、光纤、无线电波);

    • 信号的编码方式(如数字信号与模拟信号的转换);

    • 物理接口标准(如接口类型、引脚定义、传输速率)。

  • 典型设备:网卡、集线器、网线、光纤、无线网卡等。

3、TCP/IP五层模型

1. 应用层(Application Layer)

  • 功能:直接为用户应用程序提供网络服务,定义应用程序之间的通信规则。

  • 核心任务:处理具体的应用需求,如数据的生成、解析和交互逻辑。

  • 典型协议

    • 网页浏览:HTTP(超文本传输协议)、HTTPS(加密版 HTTP);

    • 文件传输:FTP(文件传输协议)、SFTP(安全文件传输协议);

    • 邮件服务:SMTP(简单邮件传输协议)、POP3(邮局协议)、IMAP(互联网消息访问协议);

    • 远程登录:SSH(安全外壳协议)、Telnet;

    • 域名解析:DNS(域名系统)。

  • 特点:是用户可见的最高层,直接与应用程序交互。

2. 传输层(Transport Layer)

  • 功能:为应用层提供端到端的可靠或高效的数据传输服务,负责数据的分段、重组和传输控制。

  • 核心任务

    • 数据分段与重组:将应用层的大块数据分割为适合传输的小数据包,接收方再重组为完整数据;

    • 端到端连接管理:通过端口号识别主机上的不同应用程序(如 HTTP 默认 80 端口,HTTPS 默认 443 端口);

    • 流量控制:调节发送速率,避免接收方因处理能力不足而丢失数据;

    • 差错控制:通过校验和、重传机制确保数据准确传输(仅 TCP 支持)。

  • 典型协议

    • TCP(传输控制协议):面向连接、可靠传输(通过三次握手建立连接,四次挥手断开连接,确保数据无丢失、无重复、按序到达),适用于文件传输、网页加载等对可靠性要求高的场景;

    • UDP(用户数据报协议):无连接、不可靠但高效(无需建立连接,传输速度快),适用于视频直播、实时游戏、语音通话等对实时性要求高的场景。

3. 网络层(Network Layer)

  • 功能:负责将数据包从源主机路由到目标主机,解决不同网络之间的通信(跨网传输)问题。

  • 核心任务

    • 逻辑寻址:通过 IP 地址(如 IPv4、IPv6)标识网络中的主机,确定数据的源和目的地;

    • 路由选择:通过路由协议(如 RIP、OSPF、BGP)计算从源网络到目标网络的最佳传输路径;

    • 数据包转发:路由器等网络设备根据路由表将数据包转发到下一跳设备;

    • 拥塞控制:避免网络因数据量过大而拥塞。

  • 典型协议

    • IP(网际协议):定义 IP 地址格式和数据包结构,是网络层的核心协议;

    • ICMP(互联网控制消息协议):用于网络诊断和错误报告(如 ping 命令基于此协议);

    • ARP(地址解析协议):将 IP 地址转换为数据链路层的 MAC 地址;

    • RARP(反向地址解析协议):将 MAC 地址转换为 IP 地址(较少使用)。

4. 数据链路层(Data Link Layer)

  • 功能:在相邻网络设备(如主机与交换机、交换机与路由器)之间的物理链路上传输数据帧,确保物理层数据的可靠传输。

  • 核心任务

    • 物理寻址:通过 MAC 地址(硬件地址)标识同一局域网内的设备;

    • 帧的封装与拆封:将网络层的数据包包装为帧(添加帧头和帧尾,包含 MAC 地址和校验信息),接收方拆封后提取数据包;

    • 差错控制:通过 CRC(循环冗余校验)检测传输错误,丢弃错误帧;

    • 流量控制:调节相邻设备间的发送速率,避免缓冲区溢出。

  • 典型技术与协议

    • 以太网(Ethernet):有线局域网的主流技术,定义了帧格式和传输规则;

    • Wi-Fi(802.11 系列协议):无线局域网技术;

    • PPP(点对点协议):用于拨号上网、专线连接等点对点通信;

    • 交换机:工作在数据链路层,通过 MAC 地址转发帧。

5. 物理层(Physical Layer)

  • 功能:定义网络设备与传输介质之间的物理连接规范,负责将数据帧转换为可在物理介质上传输的信号(如电信号、光信号、无线电波)。

  • 核心任务

    • 传输介质:定义网线(双绞线、同轴电缆)、光纤、无线电波等介质的规格;

    • 信号编码:将二进制数据(0 和 1)转换为物理信号(如高低电压、光的明暗);

    • 物理接口:定义接口类型(如 RJ45 接口、光纤接口)、引脚定义、传输速率(如 100Mbps、1Gbps)。

  • 典型设备:网卡、集线器、网线、光纤、无线网卡、中继器等。

TCP/IP 五层模型对应 OSI 七层模型说明
应用层应用层、表示层、会话层TCP/IP 将 OSI 的上三层功能合并,由应用层统一处理
传输层传输层功能基本一致
网络层网络层功能基本一致
数据链路层数据链路层功能基本一致
物理层物理层功能基本一致

4、数据的封装与解封装过程

4.1、PDU(Protocol Data Unit,协议数据单元)

  • 数据段:segment

  • 数据包:packet

  • 数据帧:frame

  • 比特流:bits

4.2、数据封装与解封装过程

TCP/IP五层模型每层对应的工作设备: 

应用层:终端设备

传输层:防火墙

网络层:路由器

数据链路层:交换机

物理层:网卡

三、 IP地址

1、进制转换

1.1、数制介绍

数制:指用统一的符号和规则来表示数值的计数方法。

数位:表示数字符号在数值中的具体位置。

基数:在进位计数制中,单个数位上可使用的数字符号总数。

位权:在进位计数制中,某数位所代表的实际数值大小,即该位上的"1"所对应的数值。

1.2、十进制

十进制数制系统由0到9这10个数字组成,其特点是逢十进一。

十进制数的表示方法:

  • 带下标表示法:(1010)₁₀
  • 字母后缀表示法:1010D

以(236)₁₀为例: 2(百位) 3(十位) 6(个位)

1.3、二进制

二进制是指基于两个数字(0和1)的计数系统。

二进制数的运算规则是逢二进一。

二进制数的表示方法:

  • (1010)₂
  • 1010B

以8位二进制数为例(每位均为1): 128 64 32 16 8 4 2 1

例如二进制数(10001011)₂: 其转换方法为从左至右每位对应2的(n-1)次方,具体数值为: 128 0 0 0 8 0 2 1 将这些数值相加即可转换为十进制: 1 + 2 + 8 + 128 = 139

二进制在计算机底层应用广泛,例如IP地址的表示

1.4、八进制

八进制数制系统由0到7共8个数字组成:0、1、2、3、4、5、6、7。其特点是"逢八进一"。

八进制数表示方法:

  • 数字下标法:(1010)₈、(13241)₈
  • 后缀表示法:1010o

八进制转十进制计算方法:

  1. 从左至右每一位权重为8ⁿ⁻¹(n为位数)
  2. 以(13241)₈为例:
    • 权重分配:512x 64x 8x 1x
    • 各位计算:4096×1 512×3 64×2 8×4 1×1
  3. 最终结果:4096 + 1536 + 128 + 32 + 1 = 5793

1.5、十六进制

十六进制数制系统由16个基本数字组成: 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F

这些数字分别对应十进制的: 0、1、2、3、4、5、6、7、8、9、10、11、12、13、14、15

十六进制遵循"逢十六进一"的进位规则。其数值表示方法有以下几种形式: (1010)₁₆ 或 1010H 或 (1B2)₁₆

计算时采用从左至右的位权展开法: 第n位的权值为16^(n-1),即...4096、256、16、1

以十六进制数1B2为例: 256×1 + 16×11 + 1×2 = 256 + 176 + 2 = 434

最终转换为十进制的结果为各数位值之和。

2、IP地址定义

主机在网络中的唯一标识,用于确保主机间的正常通信(同一局域网下)。

IP地址是一种网络编码,用于定位网络中的节点。IPv4地址由32位二进制数(32bit)组成,而IPv6地址则由128位二进制数构成

3、网络地址组成部分

网络配置(NETWORK)

  • 定义网络范围

主机配置(HOST)

  • 确定主机位置

4、IP地址分类

IP地址分为A BC D E五类,每一类有不同的划分规则

地址类型

地址范围

特点

A

0.0.0.0~127.255.255.255

第一位必须是0

B

128.0.0.0~191.255.255.255

前两位必须是10

C

192.0.0.0~223.255.255.255

前三位必须是110

D

不常见忽略

E

不常见忽略

A类地址

组成:网络部分+主机部分+主机部分+主机部分

A类地址范围为0.0.0.0~127.255.255.255 A类地址网络位固定为前8位。

网络位为2^7=128,网络位=2^可变网络位, A类地址首位不能变所以可变网络位为7位。

主机位为2^24=16777216,主机位=2^可变主机位, A类地址24位都可变所以可变主机位为24

可用主机位为2^24-2=16777214,可用主机位=2^可变主机位-2,减2的原因是由于主机号全位0定义 为网段地址,主机号全位0定义为广播地址不可随便使用。

特点:网络有126个,非常少;但是每个网络中包含的地址数量为2^24个,可用IP地址为2^24 - 2个。

使用场景: 大型网络

B类地址

组成:网络部分+网络部分+主机部分+主机部分

B类地址范围为128.0.0.0~191.255.255.255  B类地址网络位固定前16

网络位为2^14=16384,网络位=2^可变网络位, B类地址前2位不能变所以可变网络位为14位。 主机位为2^16=65536,主机位=2^可变主机位, B类地址16位都可变所以可变主机位16

可用主机位为2^16-2=65534,可用主机位=2^可变主机位-2,减2的原因是由于主机号全位0定义为网 段地址,主机号全位0定义为广播地址不可随便使用。

特点:网络数量有2^14个,网络中等;每个网络包含的地址数量为2^16个,可用IP地址为2^16 - 2

使用场景:中型网络

C类地址

组成:网络部分+网络部分+网络部分+主机部分

C类地址范围为192.0.0.0~223.255.255.255 C类地址网络位固定前24

网络位为2^21=2097152,网络位=2^可变网络位, C类地址前3位不能变所以可变网络位为21位。

主机位为2^8=256,主机位=2^可变主机位, C类地址8位都可变所以可变主机位为8

可用主机位为2^8-2=254,可用主机位=2^可变主机位-2,减2的原因是由于主机号全位0定义为网段地 址,主机号全位0定义为广播地址不可随便使用。

特点:网络数量有2^21个,网络最多;每个网络包含的地址数量为2^8个,可用IP地址为2^8 - 2

使用场景:小型网络

D E类地址

D E类地址不常用,只要知晓D类地址用于组播, E类地址用于科学研究即可。

5、地址划分

根据使用范围,IP地址可分为两类:公网地址和私网地址。

公网地址特点:

  • 需要付费使用

  • 全球可达

  • IPv4地址资源已耗尽

私网地址特点:

  • 免费使用

  • 适用于局域网内部

  • 可自由分配

私网地址范围(必须背会)

地址类型

私网地址范围

A

10.0.0.0~10.255.255.255

B

172.16.0.0~172.31.255.255

C

192.168.0.0~192.168.255.255

特殊地址

特殊地址

作用

0.0.0.0

可以表示任意IP地址

255.255.255.255

广播地址,多用于服务寻找ip

127.0.0.0~127.255.255.255

回环地址、本机地址,指代本机地址,用来测试本机网卡的 TCP/IP协议是否正确安装

169.254.0.0~169.254.255.255

微软保留地址,无ip时会分配到这段地址。

6、相关概念

6.1、网络地址   

  • 网络标识/网段

  • 用于标记特定网络的符号

  • 代表当前网络地址范围内的最小值

  • 不能用于实际网络通信

6.2、广播地址

  • 用于将数据包从一个网络广播到另一个网络中的所有主机。

  • 该网络范围内的最大IP地址值

  • 不可用于常规网络通信

6.3、子网掩码

子网掩码用于确定IP地址的网络部分:

  • 由32位二进制组成

  • 网络部分用1表示

  • 主机部分用0表示

通过将IP地址与子网掩码进行逻辑"与"运算,即可得到网络地址:

  • 0与任何数相与结果均为0

  • 1与任何数相与结果保持原数不变

常见有类地址的默认子网掩码:

  • A类:255.0.0.0(/8)

  • B类:255.255.0.0(/16)

  • C类:255.255.255.0(/24)

6.4、子网段

  • 网络中一组连续的IP地址。

  • 通常以IP地址和子网掩码的形式来表示。

  • 子网段是网络划分和管理的基本单位,可以用于划分局域网和子网。

6.5、网关

  • 连接不同网络之间的一个网络节点,即两个或多个网络的交汇处

  • 负责将数据包转发到目标网络

  • 网关通常是一台路由器,具有路由选择、地址转换等功能。

http://www.dtcms.com/a/329756.html

相关文章:

  • java14学习笔记-打包工具 (Incubator)
  • MoonBit Perals Vol.05: 函数式里的依赖注入:Reader Monad
  • JPrint免费的Web静默打印控件:PDF打印中文乱码异常解决方案
  • 什么是JSP和Servlet以及二者的关系
  • window显示驱动开发—多平面覆盖 VidPN 呈现
  • MVCC底层实现原理
  • Flask入门:从零搭建Web服务器
  • 雅思大作文笔记
  • iOS 签名证书在版本迭代和iOS上架中的全流程应用
  • Docker 在 Linux 中的额外资源占用分析
  • 智汇河套,量子“风暴”:量子科技未来产业发展论坛深度研讨加速产业成果转化
  • 信息学奥林匹克竞赛(NOI/NOIP/CSP) 学习进度自查表
  • 使用 Python Selenium 和 Requests 实现歌曲网站批量下载实战
  • 嵌入式学习 day50 IMX6ULL裸机开发 - 时钟
  • Linux 5.15.189-rt87 实时内核安装 NVIDIA 显卡驱动
  • 手机充电线贴标机如何使用
  • 内存可见性和伪共享问题
  • php7 太空船运算符
  • 在实验室连接地下车库工控机及其数据采集设备
  • 《零基础入门AI:深度学习中的视觉处理(卷积神经网络(CNN)学习)》
  • Github desktop介绍(GitHub官方推出的一款图形化桌面工具,旨在简化Git和GitHub的使用流程)
  • SpringMVC 6+源码分析(六)参数处理
  • 18. parseInt 的参数有几个
  • C语言——深入理解指针(三)
  • 【LeetCode】6. Z 字形变换
  • 美团搜索推荐统一Agent之性能优化与系统集成
  • Linux小白加油站,第二周
  • 云手机未来的发展趋势如何?
  • docker load镜像后 名字和标签异常解决
  • Centos 用户管理