【计算机网络】网络通信基础(IP地址,端口号,五元组,OSI七层模型,TCP/IP五层模型,封装和分用)

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据传输服务 DTS,数据同步 small 3个月
推荐场景:
数据库上云
数据传输服务 DTS,数据同步 1个月
简介: 随着时代发展,需要计算机之间相互通信,共享软件和数据,即多台计算机相互协同工作来完成某个业务,就有了网络互联

初识网络

网络互连


随着时代发展,需要计算机之间相互通信,共享软件和数据,即多台计算机相互协同工作来完成某个业务,就有了网络互联


网络互联:将多台计算机连接在一起,完成数据共享


数据共享的本质是网络数据传输,也称网络通信,即计算机之间通过网络来传输数据


根据网络互联的规模不同,可以划分为局域网和广域网


局域网LAN


局域网(Local Area Network),简称LAN,即局部组建的一种私有网络


局域网又称内网,局域网内的主机之间可以方便的进行网络通信,但是当局域网与局域网之间没有连接的时候,是无法进行通信的


局域网组建网络的方式有很多种:


基于网线直连

image.png


基于集线器组建

image.png


基于交换机组建

image.png


基于交换机和路由器组建

image.png


广域网WAN

image.png

广域网,(Wide Area Network),简称WAN,即通过路由器将多个局域网连接起来,在物理上组成很大范围的网络,就形成了广域网,广域网内部的局域网都属于其子网

image.png


网络通信基础

网络互联的目的是进行网络通信,也就是网络数据传输,具体的说是网络主机的不同进程间,基于网络进行数据的传输


那么在组建的网络中,如何判断是从哪台主机的哪个进程,将数据传输到哪台主机的哪个进程呢?


IP地址

IP地址主要用于标识网络主机,或其他设备(如路由器)的网络地址


IP地址的格式


IP地址是一个32位的二进制数,通常被分割为4个8位二进制数,如:01100100.00000100.00000101.00000110


IP地址通常用“点分十进制”的方式来表示,即a.b.c.d的形式(a,b,c,d都是0~255之间的十进制整数),如:100.4.5.6


特殊的IP地址


127.*用于本机环回测试,通常是127.0.0.1


本机环回主要用于本机到本机的网络通信(系统内部为了性能,不会选择网络的方式传输)


端口号

端口号用于定位主机中的进程


格式:端口号为0~65535之间的数字


在网络通信中,进程可以绑定一个端口号,来发送和接收数据


注意:不同的进程不能绑定同一个端口,但是多个端口可以被同一个进程绑定


认识网络协议

为什么需要有网络协议?


有了IP地址和端口号可以定位网络中唯一的进程,但是网络通信是基于二进制01数据来进行传输,而网络通信传输的数据类型可能有很多种,如图片,文本,视频等,并且同一种类型可能格式也不同,如发送“你好!”,如何确定发送的数据是文本类型,及文本的编码格式呢?


基于网络传输数据,需要使用网络协议来规定双方的数据格式


网络协议的概念


网络协议为网络通信经过的所有设备都必须遵从的一组约定,如怎样建立连接,怎样互相识别等,只有遵守这个约定,计算机之间才能相互通信交流


组成网络协议的三要素:


语法: 数据与控制信息的结构或格式

类似打电话双方需要使用同样的语言


语义:需要对方发出何种控制信息,完成何种动作及做出何种回应

类似问你吃饭了吗?需要回答吃了或者没吃


时序:事件实现顺序的详细说明

时序定义了何时进行通信,先讲什么,后讲什么,讲的速度等


网络协议最终体现为网络传输数据包的格式


知名协议的默认端口


端口号范围为0~65535,其中0~1023为知名端口号,这些端口号预留给服务端程序绑定广泛使用的应用层协议,如:


22端口:预留给SSH服务器绑定SSH协议

21端口:预留给FTP服务器绑定FTP协议

23端口:预留给Telnet服务器绑定Telnet协议

80端口:预留给HTTP服务器绑定HTTP协议

443端口:预留给HTTPS服务器绑定HTTPS协议

说明:0~1023范围知名端口号用于绑定知名协议,但是某个服务器也可以使用其他1024~65535范围内的端口来绑定知名协议


如:餐厅vip包房,是给会员使用,会员也可以不坐vip包房,坐普通包房


五元组

在TCP/IP协议中,用五元组来标识一个网络通信


五元组:


源IP:标识源主机

源端口号:标识源主机中发送数据的进程

目的IP:标识目的主机

目的端口号:标识目的主机中接收数据的进程

协议名:标识此次发送进程和接收进程遵守的约定格式

windows操作系统下,可以使用netstat -ano | findstr "查询字符串",查看五元组信息

linux操作系统下,可以使用netstat -anp | grep "查询字符串",查看五元组信息

image.png



说明:通过源IP和源端口找到唯一的源进程,源进程根据应用层协议将数据构造成约定协议的格式,发送数据,目的IP接收到交给目的端口,目的端口接收到,目的进程使用相同的应用层协议进行解析获取到对应数据


协议分层

OSI七层模型


OSI:Open System Interconnection即开放系统互联

层级 分层名称 功能
7 应用层 针对特定应用程序的协议
6 表示层 设备固有数据格式和网络标准数据格式的转换
5 会话层 负责建立和断开通信连接
4 传输层 负责数据传输的可靠
3 网络层 地址管理与路由选择
2 数据链路层 识别数据帧(发送数据报到下一个网络硬件设备)
1 物理层 使用网线或电磁波来传输0,1数据


OSI七层模型既复杂又不实用,所以OSI七层模型没有落地实现,实际组建网络时,使用的是下面TCP/IP五层(四层)模型


TCP/IP五层(四层)模型


TCP/IP是一组协议的代名词,它还包含了许多协议,组成了TCP/IP协议簇


TCP/IP协议采用了5层结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求


应用层:负责应用程序间的沟通,如电子邮件传输(SMTP),文件传输协议(FTP),网络远程访问协议(Telnet)等

传输层:负责两台主机之间的数据传输,如传输控制协议(TCP),能够确保数据可靠的从源主机发送到目的主机

网络层:负责地址管理和路由选择,如IP协议,路由器工作在网络层

数据链路层:负责设备之间数据帧的识别和传送,交换机工作在数据链路层

物理层:负责网线或电磁波来传输0,1数据,集线器工作在物理层

物理层考虑的较少,所以很多时候去掉物理层也叫TCP/IP四层模型


网络设备所在分层


对于一台主机,它的操作系统内核实现了从传输层到物理层的内容,即TCP/IP五层模型的下四层

对于一台路由器,它实现了从网络层到物理层,即TCP/IP五层模型的下三层

对于一台交换机,它实现了从数据链路层到物理层,即TCP/IP五层模型的下两层

对于一台集线器,它只实现了物理层

注意:这里说的是传统意义的交换机(二层交换机)路由器(三层路由器),随着网络设备技术的发展,也出现了很多三层四层交换机,四层路由器,我们说的都是传统意义的交换机和路由器


网络分层对应


在进行网络数据传输时,经过不同的网络结点(主机,路由器)时,网络分层需要对应


同一个网段内两台主机进行文件传输,通过TCP/IP协议通信的过程如下:

image.png



跨网段的主机进行文件传输,数据从一台主机到另一台主机传输要经过一个或多个路由器,通过TCP/IP协议通信的过程如下:

image.png


封装和分用

不同的协议层对数据包有不同的称谓,传输层叫作段,网络层叫作数据报,链路层叫作帧

应用层数据通过协议发到网络上时,每层协议都要加一个数据首部

首部信息中包含了一些类似于首部有多长,载荷有多长,上层协议是什么等信息

数据封装成帧后发送到传输介质上,到达目的主机后每层协议再去掉相应的首部,根据首部中的“上层协议字段”将数据交给对应的上层协议处理

封装:一个网络设备按照从高到低的顺序,使用对应分层的协议一层一层包装数据再发送


封装过程如图所示:

image.png


分用:一个网络设备,按从低到高的顺序,使用对应分层协议解析数据再使用  


分用过程如图所示:

image.png



相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
3天前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
25 1
|
8天前
|
监控 安全 BI
什么是零信任模型?如何实施以保证网络安全?
随着数字化转型,网络边界不断变化,组织需采用新的安全方法。零信任基于“永不信任,永远验证”原则,强调无论内外部,任何用户、设备或网络都不可信任。该模型包括微分段、多因素身份验证、单点登录、最小特权原则、持续监控和审核用户活动、监控设备等核心准则,以实现强大的网络安全态势。
|
27天前
|
网络协议 物联网 数据处理
C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势
本文探讨了C语言在网络通信程序实现中的应用,介绍了网络通信的基本概念、C语言的特点及其在网络通信中的优势。文章详细讲解了使用C语言实现网络通信程序的基本步骤,包括TCP和UDP通信程序的实现,并讨论了关键技术、优化方法及未来发展趋势,旨在帮助读者掌握C语言在网络通信中的应用技巧。
38 2
|
1月前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
87 2
|
1月前
|
运维 网络协议 算法
7 层 OSI 参考模型:详解网络通信的层次结构
7 层 OSI 参考模型:详解网络通信的层次结构
169 1
|
1月前
|
网络协议 算法 网络性能优化
计算机网络常见面试题(一):TCP/IP五层模型、TCP三次握手、四次挥手,TCP传输可靠性保障、ARQ协议
计算机网络常见面试题(一):TCP/IP五层模型、应用层常见的协议、TCP与UDP的区别,TCP三次握手、四次挥手,TCP传输可靠性保障、ARQ协议、ARP协议
|
1月前
|
机器学习/深度学习 人工智能 算法
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
车辆车型识别,使用Python作为主要编程语言,通过收集多种车辆车型图像数据集,然后基于TensorFlow搭建卷积网络算法模型,并对数据集进行训练,最后得到一个识别精度较高的模型文件。再基于Django搭建web网页端操作界面,实现用户上传一张车辆图片识别其类型。
87 0
【车辆车型识别】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+算法模型
|
29天前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
55 11
|
1月前
|
存储 缓存 网络协议
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
|
4月前
|
存储 安全 网络安全
POP3 协议在计算机网络中的优缺点
【8月更文挑战第19天】
98 0
POP3 协议在计算机网络中的优缺点