OSI和TCP/IP参考模型、协议与端口、DNS解析类型、数据封装

2024-08-29 06:04

本文主要是介绍OSI和TCP/IP参考模型、协议与端口、DNS解析类型、数据封装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1.OSI和TCP/IP参考模型 

1.1 为什么要进行网络分层?

1.2 TCP/IP和OSI参考模型

1.3 TCP/IP参考模型对应协议

2.对应协议和端口

3.基于IP的封装

4.DNS解析类型

5.数据封装与解封过程分析

5.1 封装


1.OSI和TCP/IP参考模型 

1.1 为什么要进行网络分层?

  1. 某一层所做的改动不会影响到其他的层,利于设计、开发和故障排除。
  2. 通过定义在模型的每一层实现功能,鼓励产业的标准化。
  3. 通过网络组件的标准化,允许多个供应商协同进行开发。
  4. 允许各种类型的网络硬件和软件互相通信,无缝融合。
  5. 促进网络技术快速迭代,降低成本。

1.2 TCP/IP和OSI参考模型

​​​​​​​

应用层(高层处理数据)

应用层

各种应用程序、协议

数据(APDU)

进程号

表示层

数据和信息的语法转换内码,数据压缩解压、加密解密

PPDU

会话层

为通信双方指定通信方式,并创建、注销会话

SPDU

传输层

传输层

提供可靠或者不可靠端到端传输

数据段,报文(segment)

端口号

网络层

网络层

逻辑寻址;路由选择

数据包/报/分组(packet)

IP地址

物理层(也叫网络接口层)(低层传输数据)

数据链路层

将分组封装成帧;提供节点到节点的传输差错控制

数据帧(frame)

MAC地址

物理层

媒介上传输比特流;提供机械和电气规约

比特流(bit)

具备流量控制的功能层次是:数据链路层和传输层

TCP/IP协议有时候分为五层(数据链路层和物理层分开),有时候被分为四层,不要太纠结。

1.3 TCP/IP参考模型对应协议

应用层

Telnet、FTP、HTTP、SMTP、POP

DNS、BOOTP、TFTP、SNMP

传输层

TCP

UDP

网络(际)层

ICMP、Routing Protocol(静态.RIP.OSPF等)、IP

数据链路层

Ethernet、Frame-Relay、PPP/PPPOE、HDLC

物理层

双绞线、光纤、跳线/尾纤、配线架/理线架

2.对应协议和端口

端口号

传输层协议

用途

说明

20

TCP

FTP、数据

文件传输协议(数据连接(大))

21

TCP

FTP、控制

控制连接

22

TCP

SSH

远程终端(安全)

23

TCP

Telnet

远程终端(不安全)

25

TCP

SMTP

简单邮件传输协议(发)

53

TCP/UDP

DNS

域名解析

67

UDP

DHCP、服务器

动态主机配置(接受请求信息)

68

UDP

DHCP、客户机

接受DHCP服务器的消息回复

69

UDP

TFTP

简单文件传输协议(小)

80

TCP

HTTP

超文本传输协议

110

TCP

POP3

邮件协议(收)

143

TCP

IMAP

交互邮件访问协议(同步)

161

UDP

SNMP

网络管理协议

162

UDP

SNMP-trap

179

TCP

BGP

边界网关路由协议

443

TCP

HTTPS(SSL/TLS)

HTTP的安全版

500

UDP

IKE

IPsec的IKE

520

UDP

RIP

路由信息协议

3389

TCP

RDP

远程桌面管理协议

系统端口:取值范围为[0,1023],上面那些就是。

登记端口:为了没有熟知端口号的应用程序使用的,端口范围为[1024,49151]。这些端口必须在IANA登记以避免重复。

客户端:使用端口仅在客户进程运行时动态使用,使用完毕后,进程会释放端口。该端口范围为[49152,65535]

ISIS:数据链路层

ARP:以太网

3.基于IP的封装

层次

协议封装

协议号

协议名称

备注

网络层

基于IP协议

1

ICMP

Internet控制报文协议

2

IGMP

Internet组管理协议

6

TCP

传输控制协议

17

UDP

用户数据报协议

41

IPv6

互联网协议第6版

47

GRE

通用路由封装协议

50

ESP

封装安全载荷协议

51

AH

身份验证标头

89

OSPF

224.0.0.1-在本地子网的所有主机
224.0.0.2-在本地子网的所有路由器
224.0.0.5-运行OSPF协议的路由器
224.0.0.6-OSPF指定/备用指定路由器DR/BDR

112

VRRP

虚拟路由器冗余协议

4.DNS解析类型

记录类型

说明

备注

SOA

SOA叫起始授权机构记录,SOA记录用于在众多NS记录中哪一台是主服务器。

SOA记录还设置一些数据版本和更新以及过期时间的信息。

A

把主机名解析为IP地址(映射)

www.test.com → 1.1.1.1

指针PTR

反向查询,把IP地址解析为主机名

1.1.1.1 →www.test.com

名字服务器NS

为一个域指定授权域名服务器,该域的所有子域也被委派给这个服务器

北如某个区域ns1.domain.com进行解析

邮件服务器MX

指明区域的邮件服务器及优先级

建立电子邮箱服务,需要MX记录将指向邮件服务器地址。

别名CNAME

指定主机名的别名
把主机名解析为另一个主机名

www.test.com别名为webserver12.test.com

AAAA

IPv6域名解析

DNS常用命令:

查看DNS缓存内容:ipconfig /displaydns

清空DNS缓存内容:ipconfig /flushdns

5.数据封装与解封过程分析

5.1 封装

(从上到下,解封装相反)

应用层

数据

APDU(进程号)

传输层

TCP报头:数据

数据段,报文(segment)

网络层

IP头部:TCP报头:数据

数据包,分组(packet)

数据链路层

MAC头部:IP头部:TCP报头:数据

数据帧(frame)

物理层

1100001010101100

比特流(bit)

例子:

应用层:准备商品

  • 比喻: 你在网上下单了一件商品,比如一部手机。
  • 功能: 应用层生成要发送的数据,就像商家准备好你的商品。

传输层:打包商品

  • 比喻: 商家把手机放进一个盒子里,并贴上订单号。
  • 功能: 传输层将数据打包成数据段,并附加传输信息(如TCP头部)来确保传输可靠。

网络层:贴上地址标签

  • 比喻: 在包裹上贴上收件人和发件人的地址。
  • 功能: 网络层在数据包上添加IP头部,确定数据的来源和目的地。

数据链路层:贴上运输标签

  • 比喻: 快递公司给包裹贴上内部追踪条形码。
  • 功能: 数据链路层在数据帧上添加MAC头部,以确保在局域网中的传输路径正确。

物理层:运输包裹

  • 比喻: 快递车将包裹沿着公路运送。
  • 功能: 物理层负责将数据变成电信号、光信号等,在物理介质中传输。

这篇关于OSI和TCP/IP参考模型、协议与端口、DNS解析类型、数据封装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

SpringBoot中封装Cors自动配置方式

《SpringBoot中封装Cors自动配置方式》:本文主要介绍SpringBoot中封装Cors自动配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录SpringBoot封装Cors自动配置背景实现步骤1. 创建 GlobalCorsProperties

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1